After I saw that bTouchActive variable there I would say you're trying to manage a touch surface. In this case, why don't you have a look at QGesture ? It might be better suited for the task instead of tracking the mouse position in real time. By the way, real time mouse tracking is very intensive and it might be the reason why your event handler reimplementation is creating performance issues.