pyQT5 弹窗选择
时间: 2025-04-25 16:35:15 浏览: 27
### 创建带有选项选择功能的对话框
在 PyQt5 中创建带有多选或单选按钮的选择对话框可以通过 `QDialog` 类来实现。下面是一个简单的例子,展示了如何构建一个具有多个选择项的对话框[^1]。
```python
from PyQt5.QtWidgets import QApplication, QDialog, QVBoxLayout, QCheckBox, QPushButton
class SelectionDialog(QDialog):
def __init__(self):
super().__init__()
layout = QVBoxLayout(self)
self.option_one = QCheckBox('Option One')
self.option_two = QCheckBox('Option Two')
self.submit_button = QPushButton('Submit')
layout.addWidget(self.option_one)
layout.addWidget(self.option_two)
layout.addWidget(self.submit_button)
self.submit_button.clicked.connect(self.accept)
if __name__ == '__main__':
app = QApplication([])
dialog = SelectionDialog()
result = dialog.exec_()
if result == QDialog.Accepted:
print(f'Options selected: {dialog.option_one.isChecked()}, '
f'{dialog.option_two.isChecked()}')
```
上述代码定义了一个名为 `SelectionDialog` 的类继承自 `QDialog`, 使用垂直布局管理器 (`VBoxLayout`) 来排列控件,并通过两个复选框 (`QCheckBox`) 提供给用户作为可选项。当点击提交按钮(`QPushButton`)时会触发接受事件并关闭窗口返回结果状态码.
#### 获取用户输入的结果
为了获取用户的最终选择,在调用 `.exec_()` 方法显示对话框之后,可以根据返回的状态码判断是否成功接收到了有效数据;如果确实如此,则可通过访问各个组件对象的方法(如`.isChecked()`)读取具体选择了哪些项目.
阅读全文
相关推荐


















