1
有沒有辦法更新QLabel(或其他)的工具提示?不斷更新工具提示
例如以下代碼使用一個不斷更新標籤及其工具提示的計時器。 雖然我可以看到標籤更改,如果我將鼠標懸停在QLabel上,我將獲得最新當前值的工具提示。工具提示將保持「固定」狀態,直到我移動鼠標爲止,該工具提示會將其更新爲新值。
!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
from PySide import QtGui, QtCore
class Example(QtGui.QWidget):
def __init__(self):
super(Example, self).__init__()
self.value=0
self.initUI()
def initUI(self):
hbox = QtGui.QHBoxLayout(self)
self.lbl = QtGui.QLabel(self)
self.lbl.setText("foo")
self.lbl.setToolTip("bar")
self.timer = QtCore.QBasicTimer()
self.timer.start(100, self)
hbox.addWidget(self.lbl)
self.setLayout(hbox)
self.show()
def timerEvent(self, x):
self.value=self.value+1
self.lbl.setText("foo: %03d" % self.value)
self.lbl.setToolTip("bar: %03d" % self.value)
if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
有沒有辦法更新工具提示而不必移動鼠標?
你覺得有可能,使'MyLabel'表現爲一個普通的'QLabel',而無需瞭解實際的提示什麼顯示?我寧願有一個可重複使用的課程... –
我不是按照你的意思。你總是必須告訴一個小部件它的工具提示是什麼。你的意思是你想使用現有的setToolTip函數而不是更特別的東西? –