Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: advox от Октябрь 10, 2009, 01:08



Название: QGraphicsView, эмулирование нажатий мыши.
Отправлено: advox от Октябрь 10, 2009, 01:08
Здравствуйте. Пишу курсовой проект по сетям. Требуется реализовать сетевое взаимодействие между клиентами, в которых будут накидывать объекты на QGraphicsScene. Хочется реализовать механизм посылки событий мыши клиенту, а не самих объектов. На удаленном клиенте буду эмулировать события. Проблема состоит в следующем: можно как-нибудь ли задать свое значение scenePos, в событии пришедшем сцене от QGraphicsView?


Название: Re: QGraphicsView, эмулирование нажатий мыши.
Отправлено: pastor от Октябрь 10, 2009, 03:20
Можно попробовать так (http://prog.org.ru/wiki/index.php?title=Frequently_Asked_Questions#.D0.9A.D0.B0.D0.BA_.D0.BF.D1.80.D0.BE.D0.B3.D1.80.D0.B0.D0.BC.D0.BC.D0.BD.D0.BE_.D1.81.D1.8D.D0.BC.D1.83.D0.BB.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D1.82.D1.8C_.D1.81.D0.BE.D0.B1.D1.8B.D1.82.D0.B8.D1.8F_.D0.BE.D1.82_.22.D0.BC.D1.8B.D1.88.D0.BA.D0.B8.22.3F)


Название: Re: QGraphicsView, эмулирование нажатий мыши.
Отправлено: advox от Октябрь 10, 2009, 15:41
Я, конечно, извиняюсь, но может стоит читать не только заголовки тем? Я знаю что такое faq и умею его читать. У меня проблема с тем, чтобы в событии, наступившем с помощью постановки в очередь, метод scenePos вернул то, что пришло по сети клиенту. Можно ли сделать как-нибудь это средствами QGraphicsView?


Название: Re: QGraphicsView, эмулирование нажатий мыши.
Отправлено: advox от Октябрь 10, 2009, 23:55
Кстати, с помощью того примера кода не получилось послать QGraphicsView ничего. Позже я унаследовал от QGraphicsView свой класс и переопределил методы mouseХХХEvent. Обработка до них действительно не доходит. На всякий случай сделал
view->setMouseTracking(true). Это тоже не помогло. Тогда я посмотрел содержимое полей при вызове события мышкой. И задал с помощью конструктора еще и глобальную позицию. Но все равно события не доходят. При этом QMainWindow, на котором располагается этот QGraphicsView, если ему послать сообщение примет его.