PyQt5是一款Python的GUI工具包,支持Qt5的所有功能。其中,QSpinBox是PyQt5中的一种控件,用于展示数字,通常情况下QSpinBox内涵一个上下按钮可以增加或减少数字。本次主要介绍PyQt5 QSpinBox如何为反悬停添加边框。
1. 安装PyQt5
首先,需要安装PyQt5库。使用以下命令进行安装:
pip install PyQt5
2. 导入库
接下来,需要在Python代码中引入QSpinBox控件和QGroupBox控件。可以使用以下代码:
from PyQt5.QtWidgets import QApplication, QSpinBox, QGroupBox
3. 创建控件
创建一个名为SpinBoxWidget
的窗口,并添加一个QGroupBox控件。
class SpinBoxWidget(QWidget):
def __init__(self):
super().__init__()
layout = QVBoxLayout()
group_box = QGroupBox("QSpinBox Example")
layout.addWidget(group_box)
self.setLayout(layout)
4. 创建QSpinBox控件
在QGroupBox控件中添加QSpinBox控件。
class SpinBoxWidget(QWidget):
def __init__(self):
super().__init__()
layout = QVBoxLayout()
group_box = QGroupBox("QSpinBox Example")
layout.addWidget(group_box)
spin_box = QSpinBox()
group_box_layout = QVBoxLayout()
group_box_layout.addWidget(spin_box)
group_box.setLayout(group_box_layout)
self.setLayout(layout)
if __name__ == '__main__':
app = QApplication([])
widget = SpinBoxWidget()
widget.show()
app.exec_()
5. 为反悬停添加边框
为QSpinBox添加反悬停效果并添加边框。
class SpinBoxWidget(QWidget):
def __init__(self):
super().__init__()
layout = QVBoxLayout()
group_box = QGroupBox("QSpinBox Example")
layout.addWidget(group_box)
spin_box = QSpinBox()
spin_box.setStyleSheet("""
QSpinBox:hover {
border: 1px solid red;
}
""")
group_box_layout = QVBoxLayout()
group_box_layout.addWidget(spin_box)
group_box.setLayout(group_box_layout)
self.setLayout(layout)
if __name__ == '__main__':
app = QApplication([])
widget = SpinBoxWidget()
widget.show()
app.exec_()
运行程序后,当鼠标悬停在QSpinBox控件上时,边框将变为红色。
以上是PyQt5 QSpinBox为反悬停添加边框的完整使用攻略,根据需要可以添加更多的控件来完成更为复杂的GUI应用。