большая программа но в ней есть трудности
суть программы которую пишу ! создаю кнопки и надо чтоб при нажатии на них выскакивало диалоговое окно ColorDialog в котором выбирали нужный цвет и в последствии этот цвет становился фоновым для кнопки которая вызвала диалог ! немогу никак разобраться как отловить какая кнопка из массива кнопок вызвана !! вот пример кода !вот массив галочек и кнопок !!! тут же и соединение с сигналом вызывавшим диалоговое окно !
[code=cpp]
for (i=0; i<8; i++)
{
CB[i] = new QCheckBox( this, "CB" );
CB[i]->setGeometry( QRect( 10+i*40, 15, 40, 20 ) );
CBB[i]=new QPushButton(" ",BoxChecker);
CBB[i]->setFlat(true);
CBB[i]->setGeometry(10+i*40, 35, 13, 13);
connect(CBB[i],SIGNAL(clicked()),
SLOT(slotGetColor()));
}
вот сам слот
void CheckForm::slotGetColor()
{
QColor color=QColorDialog::getColor(blue,this);
if(!color.isValid())
{
}
else // при нажатии ОК здесь должен сменится цвет кнопки !
{
if(CBB[1]->isOn())
CBB[1]->setPaletteBackgroundColor(color);
}
}
трудность в том не понимаю как из масива событий поймать нажатую кнопку !
если надо могу кинуть полный исходник программы вызывавшей чекбокс с кнопками !