Qt MouseMoveEvent срабатывает только при нажатии кнопки мыши



У меня тут странная проблема.



Я работаю над приложением, и в одном из моих классов я отслеживаю события мыши.



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



Я даже не фильтрую для каких-либо нажатий кнопок в методе; сам метод даже не вызывается, если я не нажимаю на этот объект (тот, который его контролирует).



Что обычно приводит к такому типу ошибок?



Я не уверен, что это уместно, но у меня есть 2 разных вещи, контролирующие мои входные данные мыши: 1) основная программа, контролирующая глобальные координаты мыши, и 2) объект в моей программе, контролирующий координаты мыши внутри себя.



Edit
Итак, проблема должна быть в том, что событие перемещения мыши обычно используется, когда люди перетаскивают курсор вдоль экрана правильно?
Причина, по которой мне это не нужно, заключается в том, что я создаю собственное контекстное меню., и мне нужно знать, когда предмет завис.

826   1  

1 ответ:

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

Итак, просто чтобы прояснить мое решение: Элементы, необходимые для отслеживания положения курсора, должны иметь

setMouseTracking(true);

Comments

    Ничего не найдено.