[英]Qt mutually exclusive checkboxes
我想在 Qt 中創建一組互斥復選框(沒有 ZE8801102A40AD89DDCFDCAEBF008D25Z Designer 或任何其他花哨的東西)。 使用三個復選框,我可以在操作 function 中執行以下操作:
void mainWindow::checkbox1action() {
// mutual exclusivity
checkbox2->setChecked(!checkbox1->isChecked());
checkbox3->setChecked(!checkbox1->isChecked());
// action for checkbox 1
...
}
同樣適用於所有其他復選框。 但是,例如,對於 colors 有 15 個復選框,此操作變得非常重復。 對於許多復選框,還有其他更好的方法嗎?
您可以將復選框添加到QButtonGroup並將其設置為獨占。
QButtonGroup *group = new QButtonGroup(this);
group->setExclusive(true);
group->addButton(checkbox1);
group->addButton(checkbox2);
還有QRadioButton ,它在同一個小部件中自動排他。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.