QCheckBox::toggled(bool)
和QCheckBox::clicked(bool)
信号之间是否有实际区别?两者都具有相同的签名,这对我连接哪一个很重要?QCheckBox :: toggled()和QCheckBox :: clicked()有什么区别?
17
A
回答
38
的toggled
信号被发射每个复选框的选中状态的变化,即使它通过代码更改时间,而clicked
信号emited只有当用户与所述复选框相互作用,例如:
ui->checkbox->setChecked(true); // toggled will be emitted but not clicked
3
QCheckBox::toggled(bool)
该复选框时改变它的状态,不管是通过点击它或使用setChecked
或toggle
发射等
QCheckBox::clicked(bool)
单击复选框时发出。也就是说,当用户在复选框上单击并释放时。当键入快捷键或使用click
时也会发生。复选框不一定要检查以便发射。
如果您在侦听复选框状态发生变化时,请使用toggled
。如果您在监听用户单击复选框时的状态,则无论是否更改状态,请使用clicked
。
6
QCheckBox继承切换和单击。
void QAbstractButton::clicked (bool checked = false) [signal]
当按钮被激活时,这个信号被发射(即,按下然后释放在鼠标光标位于按钮内),当快捷键被输入,或当点击()或animateClick()被调用。值得注意的是,如果调用setDown(),setChecked()或toggle(),则不会发出此信号。 如果该按钮是可检查的,如果该按钮被选中,则检查为true;如果该按钮未被检查,则检查为false。
void QAbstractButton::toggled (bool checked) [signal]
只要可检查按钮改变其状态就会发出此信号。如果按钮被选中,则检查为true;如果未选中该按钮,则检查为false。 这可能是由于用户操作,单击()插槽激活,或者因为调用了setChecked()。 在发出此信号之前,专用按钮组中的按钮状态会更新。这意味着插槽可以作用于状态发生变化的组中按钮所发出的“关闭”信号或“开启”信号。 例如,反应通过新检出的按钮发出的信号,但一个槽,其从已被取消选中可以使用以下的图案来实现按钮忽略信号:
void MyWidget::reactToToggle(bool checked)
{
if (checked) {
// Examine the new button states.
...
}
}
相关问题
- 1. 的QCheckBox
- 2. 取消qbuttongroip qcheckbox
- 3. 检查所有QCheckBox在QtGui.QGridLayout
- 4. QCheckBox自动换行
- 5. 为什么QCheckBox的信号没有发射?
- 6. QCheckbox/QRadioButton线换行Qt4.6.0
- 7. 禁用/启用QCheckBox文本
- 8. 将QCheckbox调整为QTableWidget:Qt
- 9. Qt中的Clicked和Pressed有什么区别?
- 10. 插入多个QCheckBox到QTableWidget奇数行
- 11. 可动态更改的QCheckBox列表
- 12. QWizard QCheckBox,QRadioButton和QComboBox:信号/插槽和SignalMapping - 所需信息
- 13. QCheckBox只执行时检查两次
- 14. 在Qt布局中列出QCheckBox项目
- 15. QCheckBox中的Qt文本对齐
- 16. Qt将QCheckBox与文本顶部对齐
- 17. 有什么区别`和$(Bash中有什么区别?
- 18. qcheckbox不改变点击时的选中状态
- 19. ==和===有什么区别?
- 20. ==和===有什么区别?
- 21. 有什么区别? :和||
- 22. ==和===有什么区别?
- 23. '=='和'==='有什么区别?
- 24. `&`和`ref`有什么区别?
- 25. 有什么区别:。!和:r!?
- 26. | 0和~~有什么区别?
- 27. Appender和〜有什么区别?
- 28. 有什么区别
- 29. 有什么区别
- 30. 有什么区别