📜  PyQt5 - 在窗口中设置状态栏消息(1)

📅  最后修改于: 2023-12-03 15:18:46.765000             🧑  作者: Mango

PyQt5 - 在窗口中设置状态栏消息

在PyQt5中,状态栏用于在主窗口下方显示一些消息,例如程序的状态、提示等。你可以使用QMainWindow中的setStatusBar方法创建和设置状态栏,并在需要的时候更新状态栏消息。

创建状态栏

要创建状态栏,需要在主窗口中调用setStatusBar方法,并将其返回值与QStatusBar进行关联。以下是示例代码:

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QStatusBar

class Example(QMainWindow):
    
    def __init__(self):
        super().__init__()
        
        self.initUI()
        
    def initUI(self):
        
        # 设置状态栏
        self.statusBar = self.statusBar()
        
        # 设置窗口大小及位置
        self.setGeometry(300, 300, 350, 250)
        self.setWindowTitle('状态栏示例')
        self.show()

if __name__ == '__main__':
    
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

以上代码中,我们首先调用了setStatusBar,并将其返回值(self.statusBar)存储在Example类中。然后,在initUI方法中,我们设置了窗口的大小、位置和标题,并调用show方法展示窗口。

更新状态栏消息

要更新状态栏消息,我们可以使用setStatusTip方法。以下是示例代码:

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QStatusBar

class Example(QMainWindow):
    
    def __init__(self):
        super().__init__()
        
        self.initUI()
        
    def initUI(self):
        
        # 设置状态栏
        self.statusBar = self.statusBar()
        
        # 设置窗口大小及位置
        self.setGeometry(300, 300, 350, 250)
        self.setWindowTitle('状态栏示例')
        self.show()
        
        # 更新状态栏消息
        self.statusBar.setStatusTip('准备就绪')
        
if __name__ == '__main__':
    
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

以上代码中,我们在Example类的initUI方法中使用setStatusTip方法更新了状态栏消息为"准备就绪"。当然,你也可以在其他地方使用setStatusTip方法来更新状态栏消息。

结论

在PyQt5中设置状态栏消息非常简单。你只需要调用setStatusBar方法创建状态栏,然后在需要的时候使用setStatusTip方法更新状态栏消息即可。