[PyQt] no mouseMoveEvent in QTextBrowser?
phil at riverbankcomputing.com
Mon Jan 21 10:56:13 GMT 2008
On Monday 21 January 2008, martin.hammer at de.thalesgroup.com wrote:
> >> Hi,
> >> I'm trying to get a mouseMoveEvent from a QTextBrowser in a
> >> of a QMainWindow. I can get mouseMoveEvents of the centralwidget but I
> >> don#t seem to be able to get them from the textBrowser. I tried none,
> >> and both of commented line but nothing helped...
> >> Can anyone give me hint?
> >> class MainWindowForm(QtGui.QMainWindow):
> >> def __init__(self, parent=None):
> >> QtGui.QMainWindow.__init__(self)
> >> self.ui = Ui_MainWindow()
> >> self.ui.setupUi(self)
> >> #self.connect( self.ui.textBrowser,
> >> QtCore.SIGNAL("mouseMoveEvent(QMouseEvent *)"),
> >> self.on_textBrowser_mouseMoveEvent)
> >> #@QtCore.pyqtSignature("QMouseEvent *")
> >> def on_textBrowser_mouseMoveEvent(self, e):
> >> print "textBrowser mouse move"
> >> def mouseMoveEvent(self, ev):
> >> print "centralwidget mouse move"
> >> ---
> >Events aren't signals. You either need to sub-class QTextBrowser and
> >reimplement mouseMoveEvent() (as you have done for QMainWindow) or
> install an
> >event filter.
> Thanks for that, but as usual for one answer there come more questions :-)
> When I install an eventfilter on the textBrowser I get many events like
> ToolTip but very few MouseMoves. In fact I get only MouseMove events
> immediately after the mouse enters or before it leaves the textBrowser.
> Funny is that I get MouseButtonDblClick events with the middle and right
> button but not with the left button.
> In contrast to that, when I use a sub-class of textBrowser I think I get
> all MouseMove events, but sub-classing objects, when I use the designer is
> somewhat - hm, ugly - because you don't see it in designer.
> Martin Hammer
You probably want QWidget.setMouseTracking().
More information about the PyQt