pyqt5 簡易狀態燈#
在實際應用中,需要即時獲取設備狀態並在軟體中以狀態燈的形式展示。一種比較簡單快捷的方法是使用PyQt5
的標籤Label
,將標籤修改為圓形,然後以不同的顏色填充。
1、狀態燈的設計,將標籤的尺寸設置為正方形,目前使用的尺寸是長: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)
狀態燈實際使用效果