pyqt5 簡易ステータスライト#
実際には、デバイスのステータスをリアルタイムに取得し、ソフトウェア上でステータスライトの形式で表示する必要があります。これを行うための比較的簡単で便利な方法は、PyQt5
のLabel
タグを使用して、ラベルを円形に変更し、異なる色で塗りつぶすことです。
- ステータスライトのデザインでは、ラベルのサイズを正方形に設定し、現在は長さ:20、幅:20 を使用しています。直径 20、半径 10 で
setStyleSheet
を使用して円形に設定し、デフォルトで赤色にします。
以下はコードです。
self.StdWlrStatus = QtWidgets.QLabel(self.centralwidget) #新しいラベルを作成
self.StdWlrStatus.setGeometry(QtCore.QRect(35, 110, 20, 20)) #ラベルのサイズを20X20に設定
self.StdWlrStatus.setStyleSheet("border-radius:10px;background-color:red")#ラベルを円形の赤色に設定
- 条件に基づいて、デバイスのステータスを判断し、ステータスライトに異なる色を割り当てます。
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)
ステータスライトの実際の使用効果