控件用来创建单选按钮,允许在一组选项中选择其中一个选项。
用法
text() 获取按钮文本
setText() 设置按钮文本
setCheckable() 设置按钮被选中,设置为True则选中,设置为False则取消选中
isChecked() 获取按钮是否被选中,选中返回True,未选中返回False
常用信号
toggled 单选按钮状态改变时发出信号
例子
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton, QHBoxLayout
class QRadioButtonDemo(QWidget):
def __init__(self):
super(QRadioButtonDemo, self).__init__()
self.init_ui()
def init_ui(self):
h_layout = QHBoxLayout(self)
radio_btn1 = QRadioButton('选项1')
radio_btn1.setCheckable(True) # 默认选中
radio_btn1.toggled.connect(self.radio_status) # 绑定状态变化信号
radio_btn2 = QRadioButton('选项2')
radio_btn2.toggled.connect(self.radio_status)
h_layout.addWidget(radio_btn1)
h_layout.addWidget(radio_btn2)
def radio_status(self):
res = self.sender() # 获取选中的控件对象
print(res)
if res.isChecked():
print(f'{res.text()}被选中')
else:
print(f'{res.text()}被取消')
if __name__ == '__main__':
app = QApplication(sys.argv)
w = QRadioButtonDemo()
w.show()
sys.exit(app.exec())