Russian Qt Forum
Ноябрь 24, 2024, 14:43
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
2D и 3D графика
>
MouseMoveEvent QGraphicsScene только при нажатой кнопке мыши...
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: MouseMoveEvent QGraphicsScene только при нажатой кнопке мыши... (Прочитано 2993 раз)
TheBlade
Гость
MouseMoveEvent QGraphicsScene только при нажатой кнопке мыши...
«
:
Декабрь 12, 2010, 21:51 »
Только, что видел похожую тему, которая не решила моих проблем, а писать в тему с пометкой РЕШЕНО думаю бессмысленно.
Сцена не видит перемещения мыши, хотя в 4.6 это событие работало.
Если какая-нибудь кнопка мыши нажата то сцена начинает ловить перемещение...
Во View таже проблема, но устраняется элементарно -
setMouseTracking(true) после этого вьюха стала получать события перемещения, но у сцены такой опции нет, она не наследована от QWidget...
Буду очень признателен за любую помощь...
Записан
TheBlade
Гость
Re: MouseMoveEvent QGraphicsScene только при нажатой кнопке мыши...
«
Ответ #1 :
Декабрь 12, 2010, 22:01 »
Разобрался... странно что сразу не заметил, если поставить setMouseTracking(true); для View которая связана со сценой тогда событие перемещения будет передано сцене.
Записан
mal
Гость
Re: MouseMoveEvent QGraphicsScene только при нажатой кнопке мыши...
«
Ответ #2 :
Декабрь 14, 2010, 17:01 »
на сцене должен быть хоть один айтем, у которого установлено свойство setAcceptHoverEvents(true).
Айтем можно погасить, если он не нужен. Например так я делаю в одном проекте - ну сцену положен пиксмапайтем, рект сцены равен ректу этого пиксмапа. Сам пиксмап мне тут конкретно не нужен. Я его гашу, однако сцена ловит MouseMoveEvent, а так как пиксмапайтем погашен, его нахождение на сцене не создает никаких дополнительных накладных расходов.
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...