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_())
マウスを動かさずにツールチップを更新する方法はありますか?