观察过QCheckBox的所有信号,发现只有toggled()信号表示check状态发生变化时会发出的信号。然而,我的问题是,当checkbox初始化为false,而且Setchecked的值也是false的时候是不会发出信号的。
贴代码:
UITest::UITest(QWidget *parent, Qt::WFlags flags)各位看官有什么招吗?
: QDialog(parent, flags)
{
ui.setupUi(this);
_cbFirst = new QCheckBox("first checkbox");
_cbSecOnd= new QCheckBox("second checkbox");
ui.verticalLayout->addWidget(_cbFirst);
ui.verticalLayout->addWidget(_cbSecond);
connect(_cbFirst, SIGNAL(toggled(bool)), this, SLOT(synState(bool)));
_cbFirst->setChecked(true);
_cbFirst->setChecked(false);
}
UITest::~UITest()
{
}
void UITest::synState(bool checked)
{
_cbSecond->setDisabled(!checked);
}
欢迎交流!