【python】PyQt5中QAbstractButton基类的特性详细分析与实战应用
from PyQt5.QtWidgets import QApplication, QPushButton
from PyQt5.QtCore import Qt
class MyButton(QPushButton):
def __init__(self, text=''):
super().__init__(text)
self.setCheckable(True) # 设置按钮为可选择模式
def sizeHint(self):
size = super().sizeHint()
size.setHeight(size.height() + 10) # 增加按钮高度
return size
if __name__ == '__main__':
app = QApplication([])
button = MyButton('Click me')
button.setChecked(True) # 设置按钮为选中状态
button.toggle() # 切换按钮的选中状态
button.setFont(button.font().bold()) # 设置按钮字体为粗体
button.setStyleSheet("QPushButton { color: white } QPushButton:checked { color: red }")
button.show()
app.exec_()
这段代码定义了一个继承自QPushButton的MyButton类,并重写了sizeHint方法来改变按钮的高度。在实例化MyButton后,设置了按钮的文本、将其设置为可选择模式、设置为选中状态、切换选中状态、设置字体为粗体以及定制了样式表。最后,显示并运行应用程序。这个实例展示了如何在PyQt5中创建一个具有特定行为的按钮组件。
评论已关闭