pyqt checkbox二选一
时间: 2024-12-23 20:04:05 浏览: 2
PyQt中的Checkbox(复选框)通常用于提供用户两个选项之间的选择,即“启用”或“禁用”。如果你想创建一个只能选其一(即二选一)的情况,你可以通过设置单选按钮(QRadioButton)配合使用。
1. 首先,你需要从`QtWidgets`模块导入`QRadioButton`和相关的控件,如`QButtonGroup`:
```python
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QLabel, QRadioButton, QButtonGroup
```
2. 创建一个`QButtonGroup`并将其添加到窗口布局中,以管理多个单选按钮的行为:
```python
button_group = QButtonGroup()
```
3. 然后创建两个单选按钮,并将它们添加到`QButtonGroup`中:
```python
radio_button_1 = QRadioButton('选择一')
radio_button_2 = QRadioButton('选择二')
button_group.addButton(radio_button_1)
button_group.addButton(radio_button_2)
```
4. 添加单选按钮到窗口布局中,确保只有一个按钮默认被选中:
```python
layout = QVBoxLayout()
layout.addWidget(radio_button_1)
layout.addWidget(radio_button_2)
main_window = QWidget()
main_window.setLayout(layout)
main_window.show()
# 如果你想让第一个按钮默认选中
radio_button_1.setChecked(True)
```
当用户点击另一个按钮时,原选中的按钮会被取消选中,新点击的按钮则会获得焦点。
阅读全文