在主界面加了一个状态栏,作为简易操作说明,但是点击菜单栏时,不管是否选中菜单栏下的选项,状态栏都会消失。
网上给了很多关于永久显示状态栏的方法:
self.status = self.statusBar()
#状态栏本身显示的信息,第二个参数是信息停留的时间,单位是毫秒,
#默认是0(0表示在下一个操作来临前一直显示)
self.status.showMessage('显示的信息', 0)
问题就在这,下一个操作前,状态栏信息显示不变,但只要有操作,比如点击按钮,状态栏就会改变或消失。
可以采用下面的方式,对pyqt事件进行判断:
# 此处覆盖父类函数: 克服将鼠标放置于菜单栏上,状态栏就消失的问题;
def event(self, QEvent):
if QEvent.type() == QEvent.StatusTip:
if QEvent.tip() == "":
QEvent = QStatusTipEvent("显示内容!") # 此处为要始终显示的内容
return super().event(QEvent)