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)
ステータスライトの実際の使用効果