PyQt5 – 矩形指示器单选按钮

  • Post category:Python

下面我将为您提供 Pyqt5-矩形指示器单选按钮 的完整使用攻略。

Pyqt5-矩形指示器单选按钮的介绍

Pyqt5是一个基于QT库的python GUI编程库,它提供了许多用于GUI编程的常用控件,在PyQt5中我们可以非常方便的使用矩形指示器单选按钮。

矩形指示器单选按钮,也叫做QButtonGroup,是一组按钮的容器,只有一个按钮可以被选中,通过矩形指示器的方式来表示当前选中的按钮。

Pyqt5-矩形指示器单选按钮的使用

矩形指示器单选按钮的使用需要以下几个步骤:

  1. 导入PyQt5的相关模块
from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton, QVBoxLayout, QButtonGroup
  1. 创建 QWidget 控件
app = QApplication([])
window = QWidget()
  1. 创建 QRadioButton 对象并存放到 QButtonGroup 容器内
button_group = QButtonGroup()
button1 = QRadioButton("按钮1")
button2 = QRadioButton("按钮2")
button_group.addButton(button1, 1)  # 为按钮设置id
button_group.addButton(button2, 2)
  1. 创建 QVBoxLayout 控件,并将 QRadioButton 对象添加到该控件中
layout = QVBoxLayout()
layout.addWidget(button1)
layout.addWidget(button2)
  1. 设置指示器样式
button_group.setExclusive(True)  # 使得只能有一个按钮被选择
button_group.buttonClicked[int].connect(on_button_clicked)  # 绑定按钮点击事件
  1. 将 QVBoxLayout 控件添加到 QWidget 控件中
window.setLayout(layout)
  1. 运行程序
window.show()
app.exec_()

Pyqt5-矩形指示器单选按钮的示例

下面我们通过两条示例来说明 Pyqt5-矩形指示器单选按钮 的用法。

示例1:创建矩形指示器单选按钮

from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton, QVBoxLayout, QButtonGroup

def on_button_clicked(id):  # 按钮点击事件
    print(f"button{id} clicked")

app = QApplication([])
window = QWidget()

button_group = QButtonGroup()
button1 = QRadioButton("按钮1")
button2 = QRadioButton("按钮2")
button_group.addButton(button1, 1)  # 为按钮设置id
button_group.addButton(button2, 2)

layout = QVBoxLayout()
layout.addWidget(button1)
layout.addWidget(button2)

button_group.setExclusive(True)  # 使得只能有一个按钮被选择
button_group.buttonClicked[int].connect(on_button_clicked)  # 绑定按钮点击事件

window.setLayout(layout)
window.show()
app.exec_()

示例2:通过矩形指示器展示选项

from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton, QHBoxLayout

def on_button_clicked():  # 按钮点击事件
    print(f"select button: {button1.text() if button1.isChecked() else button2.text()}")

app = QApplication([])
window = QWidget()

button1 = QRadioButton("选项1")
button2 = QRadioButton("选项2")

button1.setChecked(True)  # 设置默认值
button1.toggled.connect(on_button_clicked)  # 绑定按钮点击事件
button2.toggled.connect(on_button_clicked)

layout = QHBoxLayout()
layout.addWidget(button1)
layout.addWidget(button2)

window.setLayout(layout)
window.show()
app.exec_()

以上就是 Pyqt5-矩形指示器单选按钮 的使用攻略,希望能对您有所帮助。