我有一个工作信号槽机制供用户检查和取消选中复选框。
QWidget *w = new QWidget(this);
w->setFixedSize(300,200);
QVBoxLayout *vbox = new QVBoxLayout;
foreach(QString filt, filters){
QCheckBox *checkbox = new QCheckBox(filt, this);
checkbox->setChecked(true);
vbox->addWidget(checkbox);
connect(checkbox, SIGNAL(stateChanged(int)), this, SLOT(cbstate(int)));
}
w->setLayout(vbox);
w->show();
void MainWindow::cbstate(int state){
if(state == 0){
//unchecked
QMessageBox::information(this, "blah", "You have unchecked this box");
}
else if (state == 2){
//checked
QMessageBox::information(this, "blah", "You have checked this box");
}
}
我的问题的解释很简单,我需要将 传递QString filt
给cbstate
函数。
我不知道该怎么做?当我尝试将其添加到插槽时,它会引发错误。