对于stateChanged信号,我的QT Slot函数有以下情况:
void ui::myslot(int state) {
...
if (condition) {
checkbox->setChecked(true);
}
...
}
如果已选中我的复选框,并且当我尝试取消选中该复选框时,如果条件已满足,则将再次选中该复选框。 但是,当我尝试再次取消选中它并且条件仍然为真时,它就会变为未选中状态而不会发出任何信号。即,上述功能甚至不被称为......
知道这里会发生什么吗?
非常感谢! :)
答案 0 :(得分:0)
您是否尝试创建临时插槽,将其与stateChanged()信号连接?例如:
void onStateChanged(int state);
您可以将广告位定义为:
void onStateChanged(int state)
{
qDebug() << "State changed.";
}
不要忘记在.cpp文件中包含标题。然后将插槽与信号连接并启动应用程序。如果您在标准输出中看到"State changed."
并且执行到达插槽,则信号将正确发出。