Окно Qt перемещается даже при перехвате событий мыши

У меня есть приложение Qt OpenGL (с qt 5.5), в котором вы можете щелкать, чтобы перетаскивать объекты в 3D-сцене.

Это реализовано за счет подкласса QOpenGLWidget, который переопределяет mousePressEvent, mouseReleaseEvent и mouseMoveEvent.

Однако, когда я перетаскиваю объект, я могу переместить его на один кадр, прежде чем окно начнет активировать режим перемещения окна, и мои движения мыши фактически начнут перемещать все окно, как если бы я перетаскивал строку заголовка.

Я подозреваю, что существует конфликт между приложением и моим оконным менеджером (kwin 5.4.3), но я не знаю, где искать, чтобы отладить эту проблему, и является ли это ошибкой моего приложения или мне нужно исправить мой оконный менеджер.


person Louen    schedule 24.03.2016    source источник


Ответы (1)


Возможно, вам потребуется вызвать метод accept() события, которое вы обрабатываете.

person okirmis    schedule 24.03.2016