Я создал флажок, который также является QTreeWidgetItem, используя код ниже.
//Populate list
QTreeWidgetItem *program = createCheckedTreeItem(QString::fromStdString(itr->first), true);
treePrograms->addTopLevelItem(program);
QTreeWidgetItem* ConfigDialog::createCheckedTreeItem(QString name,bool checkBoxState)
{
QTreeWidgetItem *item = new QTreeWidgetItem(QStringList(name));
item->setFlags(item->flags()|Qt::ItemIsUserCheckable);
if (checkBoxState)
{
item->setCheckState(0,Qt::Unchecked);
}
else
{
item->setCheckState(0,Qt::Checked);
}
return item;
}
Мне нужен способ подключения сигнала и слота, когда состояние этого флажка изменяется.Текущий способ, которым я реализовал это ниже, но, к сожалению, не работает.Может кто-нибудь объяснить, что я делаю неправильно и что мне нужно сделать, чтобы подключить его?
connect(program, SIGNAL(toggled(bool)), this, SLOT(programChecked(bool)));