pyqt5 怎么创建一个灯泡效果的控件,当结果为Fail时显示红灯,结果为pass时显示绿灯
时间: 2024-05-16 13:15:32 浏览: 53
红灯,绿灯闪烁的控件
5星 · 资源好评率100%
你可以使用 `QLabel` 控件来实现灯泡效果,并且根据不同的结果来更改它的颜色。具体实现如下:
```python
from PyQt5.QtWidgets import QWidget, QLabel, QVBoxLayout
from PyQt5.QtGui import QPixmap
from PyQt5.QtCore import Qt
class LampWidget(QWidget):
def __init__(self, parent=None):
super(LampWidget, self).__init__(parent)
self.label = QLabel(self)
self.label.setAlignment(Qt.AlignCenter)
layout = QVBoxLayout()
layout.addWidget(self.label)
self.setLayout(layout)
self.set_lamp_color("pass")
def set_lamp_color(self, result):
if result == "pass":
pixmap = QPixmap("green_lamp.png")
else:
pixmap = QPixmap("red_lamp.png")
self.label.setPixmap(pixmap)
```
在上面的代码中,我们创建了一个名为 `LampWidget` 的小部件,并且在它的构造函数中创建了一个 `QLabel` 控件,用于显示灯泡图片。在 `set_lamp_color` 函数中,我们根据结果来更改 `QLabel` 中显示的图片,从而实现了灯泡颜色的变化。你需要自己准备好红色和绿色的灯泡图片,并且将它们命名为 `red_lamp.png` 和 `green_lamp.png`。
阅读全文