pyqt5 简易状态灯#
实际中要实时获取设备状态并在软件上以状态灯形式展示,一个比较简单快捷的方法,是用PyQt5
的标签Label
,将标签修改为圆形,然后以不同颜色填充
1、状态灯的设计,将 label 的尺寸设置为正方形,当前使用的是长:20,宽:20。然以 20 为直径,10 以半径将setStyleSheet
设置为圆型,并且默认为红色
代码如下
self.StdWlrStatus = QtWidgets.QLabel(self.centralwidget) #新建一个label
self.StdWlrStatus.setGeometry(QtCore.QRect(35, 110, 20, 20)) #label的尺寸设置为20X20
self.StdWlrStatus.setStyleSheet("border-radius:10px;background-color:red")#label为圆形红色
2、根据条件,判断设备状态,然后给状态灯赋以不同的颜色
def StdStatusLightSet(self,ThreadSingDic):
SheetStrHead="border-radius:10px;background-color:"
if ThreadSingDic["Connect"]==1: #判断MWR设备是否在线,1为在线,0为离线,-1为连接过程中出现异常
WLRStatus="green"
else:
WLRStatus = "red"
self.StdWlrStatus.setStyleSheet(SheetStrHead+WLRStatus)
状态灯实际使用效果