python GUI庫圖形介面開發之PyQt5狀態列控制元件QStatusBar詳細使用方法例項
阿新 • • 發佈:2020-02-29
PyQt5狀態列控制元件QStatusBar簡介
MainWindow物件在底部保留有一個水平條,作為狀態列(QstatusBar),用於顯示永久或臨時的狀態資訊
QStatusBar類中的常用方法
方法 | 描述 |
---|---|
addWidget() | 在狀態列中新增給定的視窗小控制元件物件 |
addPermanentWidget() | 在狀態列中永久新增給定的視窗小控制元件物件 |
showMessage() | 在狀態列顯示一條臨時資訊,指定時間間隔 |
clearMessage() | 刪除正在顯示的臨時資訊 |
removeWidget() | 從狀態列中移除指定的小控制元件 |
QStatusBar的使用例項
import sys from PyQt5.QtGui import * from PyQt5.QtWidgets import * from PyQt5.QtCore import * class StatusDemo(QMainWindow): def __init__(self,parent=None): super(StatusDemo,self).__init__(parent) #例項化選單欄 bar=self.menuBar() #新增父選單 file=bar.addMenu('File') #新增子選單 file.addAction('show') #當選單物件被點選時,觸發繫結的自定義的槽函式 file.triggered[QAction].connect(self.processTrigger) #設定當行文字輸入框為中間控制元件 self.setCentralWidget(QTextEdit()) #例項化狀態列 self.statusBar=QStatusBar() self.setWindowTitle('QStatusBar例子') #設定狀態列,類似佈局設定 self.setStatusBar(self.statusBar) def processTrigger(self,q): if (q.text()=='show'): #設定狀態列的顯示文字以及顯示時間 self.statusBar.showMessage(q.text()+'選單選項被點選了',5000) if __name__ == '__main__': app=QApplication(sys.argv) demo=StatusDemo() demo.show() sys.exit(app.exec_())
執行效果如下
QStatusBar程式碼分析
在這個例子中,頂層視窗MainWindow有一個選單欄和一個QTextEdit物件,作為中心控制元件
當單擊MenuBar的選單時,將triggered訊號與槽函式進行繫結
#當選單物件被點選時,觸發繫結的自定義的槽函式 file.triggered[QAction].connect(self.processTrigger)
當單擊show選單選項時,會在狀態列提示資訊,5秒後消失
#設定狀態列的顯示文字以及顯示時間 self.statusBar.showMessage(q.text()+'選單選項被點選了',5000)
通過主視窗的QMainWindow的setStatusBar()函式設定狀態列,核心程式碼如下
#例項化狀態列 self.statusBar=QStatusBar() #設定狀態列,類似佈局設定 self.setStatusBar(self.statusBar)
本文主要講解了PyQt5狀態列控制元件QStatusBar詳細使用方法與例項,更多關於PyQt5控制元件知識請檢視下面的相關連結