QPushButton 父类 QAbstractButton
QAbstracktButton
QPushButton
QToolButton
QRadioButton
QCheckBox
def initUI(self):
self.setWindowTitle('QLineEditDemo')
self.setGeometry(500,500,300,200)
self.button1 = QPushButton('button1') #可以查看按钮的基类,有方法settext
self.button1.setText('first button1')
self.button1.setCheckable(True) #可以checkable 处于选中的状态
self.button1.toggle() #设置开关 按下不会弹起,再次按下才会弹起
self.button1.clicked.connect(lambda :self.SwitchButton(self.button1)) #必须是这样
# self.button1.clicked.connect(self.SwitchButton(self.button1)) 如果函数需要传参数的话,这样是错误的
self.button1.clicked.connect(self.buttonState)
button2 = QPushButton('button2 Qicon')
button2.setIcon(QIcon(QPixmap('file_path')))
button2.clicked.connect(lambda :self.SwitchButton(button2))
button2.clicked.connect(self.buttonState)
button3 = QPushButton('unuse')
button3.setEnabled(False)
button4 = QPushButton('&Mybutton')
button4.setDefault(True)
button4.clicked.connect(lambda :self.SwitchButton(button4))
layout = QVBoxLayout()
layout.addWidget(self.button1)
layout.addWidget(button2)
layout.addWidget(button3)
layout.addWidget(button4)
self.setLayout(layout)
def SwitchButton(self,btn):
print('which button is clicked: '+btn.text()+'>')
def buttonState(self): #设置开关 按下不会弹起,再次按下才会弹起
if self.button1.isChecked():
print("checked")
else:
print("unchecked")

本文深入探讨了QPushButton组件的使用方法,包括如何设置按钮文本、图标、状态及响应点击事件。通过具体实例展示了不同类型的按钮,如可检查按钮、禁用按钮和默认按钮的功能与实现。
880

被折叠的 条评论
为什么被折叠?



