使用Qt开发界面时,经常会用到按钮组件,如RadioButton、CheckBox等。在QML中,我们可以通过ButtonGroup来实现这样的组合,并且还可以方便地获取选中的按钮。
首先,我们需要在QML文件中引入QtQuick.Controls模块,并且创建一个ButtonGroup:
import QtQuick.Controls 2.15
ButtonGroup {
id: group
exclusive: true // exclusive为true表示只有一个按钮可以被选中
}
接下来,我们可以使用RadioButton和CheckBox来添加按钮:
RadioButton {
text: "Option 1"
checked: true // checked为true表示默认选中
ButtonGroup.group: group // 绑定到ButtonGroup中
}
CheckBox {
text: "Option 2"
ButtonGroup.group: group // 绑定到ButtonGroup中
}
如果exclusive属性为true,则在按钮组中只能选择一个选项。我们可以通过绑定ButtonGroup中的checkedButton属性来获取当前选中的按钮:
// 输出当前选中的按钮文本信息
onCheckedButtonChanged: console.log(checkedButton.text)
最后,让我们看一下完整的源代码,实现一个包含两个单选按钮和一