在 PyQt5 中,QPushButton 是一个用于创建按钮的类
pip install pyqt5
custom_button.py
的文件,并添加以下代码:import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QPushButton
class CustomButton(QPushButton):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.setStyleSheet("""
QPushButton {
background-color: #4CAF50;
color: white;
border: none;
padding: 10px 20px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 16px;
margin: 4px 2px;
cursor: pointer;
border-radius: 12px;
}
QPushButton:hover {
background-color: #45a049;
}
QPushButton:pressed {
background-color: #3e8e41;
}
""")
class MainWindow(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
layout = QVBoxLayout()
button1 = CustomButton("Button 1")
button2 = CustomButton("Button 2")
layout.addWidget(button1)
layout.addWidget(button2)
self.setLayout(layout)
if __name__ == "__main__":
app = QApplication(sys.argv)
main_window = MainWindow()
main_window.show()
sys.exit(app.exec_())
在这个示例中,我们创建了一个名为 CustomButton
的自定义按钮类,它继承自 QPushButton
。我们使用 setStyleSheet()
方法设置了按钮的样式。然后,在 MainWindow
类中,我们创建了两个 CustomButton
实例,并将它们添加到布局中。
运行此代码,你将看到一个包含两个自定义按钮的窗口。这些按钮具有绿色背景、白色文本和圆角边框。当鼠标悬停在按钮上时,背景颜色会变暗,当按钮被按下时,背景颜色会进一步变暗。