![04ea9f3f0e630ce02bd3ea878666e398.png](https://i-blog.csdnimg.cn/blog_migrate/4d1b4f3943108a7cc5b62deb10f2fc9c.jpeg)
单选框QRadioButton简介
QRadioButton为单选按钮, 可以选中(打开)或者取消选中(关闭)。在一组单选按钮中,一次只能选中其中的一个按钮。选中或者取消选中QRadioButton, 都会发出toggled()信号。使用isChecked()可以查看是否选择了某个QRadioButton按钮。
QRadioButton 常用方法:
- setChecked(): 设置按钮是否已经被选中,可以改变单选按钮的选中状态,如果设置为True则表示单选按钮将保持以点击和释放状态;
- isChecked(): 返回单选按钮的状态,返回True或False;
- setText(): 设置单选按钮显示的文本;
- text(): 返回单选按钮显示的文本。
QRadioButton类继承关系:
![bfb3b6cf4e58bfe10e6e34d6ebe0f869.png](https://i-blog.csdnimg.cn/blog_migrate/d375081f9b9f9e98eaa2ba649bc85bb0.jpeg)
测试单选框QRadioButton
创建文件qradiobutton.py, 添加“开灯”和 “关灯”两个QRadioButton,点击开灯按钮,显示开灯图片,否则显示关灯图片。代码如下:
import sysimport osfrom PyQt5 import QtCore, QtGui, QtWidgetsfrom PyQt5.QtWidgets import (QApplication, QMainWindow, QLabel, QRadioButton)from PyQt5.QtGui import QPixmap class DemoRadioButton(QMainWindow): def __init__(self, parent=None): super(DemoRadioButton, self).__init__(parent) # 设置窗口标题 self.setWindowTitle('实战PyQt5: QRadioButton Demo!') # 设置窗口大小 self.resize(400, 300) self.light_on = QRadioButton(self) self.light_on.setText('开灯') self.light_on.move(10, 10) self.light_on.toggled.connect(self.onOrOff) self.light_off = QRadioButton(self) self.light_off.setText('关灯') self.light_off.move(60, 10) self.light_off.toggled.connect(self.onOrOff) self.label_light = QLabel(self) self.label_light.setGeometry(72, 40, 256, 256) # 设置初始状态,开灯 self.light_on.setChecked(True) self.onOrOff() def onOrOff(self): if self.light_on.isChecked(): pix = QPixmap(os.path.dirname(__file__) + "/light_on.png") self.label_light.setPixmap(pix) else: pix = QPixmap(os.path.dirname(__file__) + "/light_off.png") self.label_light.setPixmap(pix) if __name__ == '__main__': app = QApplication(sys.argv) window = DemoRadioButton() window.show() sys.exit(app.exec())
运行结果如下图所示:
![8097802c844ab872c17884bff124dfb6.gif](https://i-blog.csdnimg.cn/blog_migrate/b759b58a8b5a8afabb5277c91dff3dfc.gif)
测试QRadioButton
本文知识点
- QRadioButton的基本用法;
- QLabel切换显示静态图片,展示灯的打开和熄灭状态。
喜欢本文内容就收藏,点赞,评论,关注和转发。