单选按钮QRadioButton
继承 QAbstractButton
import sys from PyQt5.QtGui import QPixmap from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton, QLabel, QHBoxLayout, QVBoxLayout class Demo(QWidget): def __init__(self): super(Demo, self).__init__() self.resize(300,300) self.rb1=QRadioButton('男',self) # 实例化单选按钮,参数1:显示的文本 self.rb2 = QRadioButton('女', self) self.rb1.move(100,50) self.rb2.move(100, 100) self.rb1.setChecked(True) # 设置为选中状态 self.rb1.toggled.connect(self.func) # 按钮状态发生变化时发出信号 w=QWidget(self) w.setStyleSheet('background-color: red') w.resize(100,80) w.move(150,50) self.rb3 = QRadioButton('是', w) self.rb4 = QRadioButton('否', w) self.rb3.move(10, 10) self.rb4.move(10, 50) #特别注意:多组单选按钮,以父控件为分割标志;也可以用按钮组QButtonGroup来分割 def func(self): if self.rb1.isChecked(): # 返回按钮是否被选中,True选中 print('男按钮被选中') else: print('男按钮没有被选中') if __name__ == '__main__': app = QApplication(sys.argv) demo = Demo() demo.show() sys.exit(app.exec_())
UI界面:
是否选中
信号:
天子骄龙