Название: Как получить координаты мыши, при обработке события от клавиатуры (график QWT) Отправлено: VVN от Ноябрь 26, 2011, 15:29 Здравствуйте.
Есть график QWT который масштабирую. Основа взята из уроков http://www.prog.org.ru/topic_11884_0.html http://qtlinux.narod.ru/qwtchartzoom.htm Отдельное спасибо их авторам. Перехватываются события элементов управления в Код: eventFilter(QObject *obj,QEvent *event) который зарегистрирован в канве Код: qwtp->canvas()->installEventFilter(this); Шкала по Х мне нужна только положительная. При масштабировании я запоминаю, положение Х курсора мыши, для того чтобы при масштабировании графика, эта точка на графике, оставалась на месте, а двигался график по бокам. Все работает при прокрутке колесом мыши. Но мне нужно изменять масштаб клавишами '+', '-' Я перехватываю события от клавиатуры в eventFilter Код: if (event->type() == QEvent::KeyPress || Тоже все замечательно, но тут главная проблема я не могу получить координаторы мыши Если сделать так Код: QMouseEvent *mEvent = static_cast<QMouseEvent *>(event); То в mEvent получаю левые значения. Проблему решил следующим образом, постоянно отслеживаю положение мыши и сохраняю ее координаты. В принципе все работает, но хочется считать положение курсора мыши вместе с обработкой события от клавиатуры. Подскажите как это реализовать. Название: Re: Как получить координаты мыши, при обработке события от клавиатуры (график QWT) Отправлено: twp от Ноябрь 28, 2011, 17:15 а какие координаты приходят? вообще то не мешало бы еще проверять что qwtp->canvas() == obj в eventFilter
Название: Re: Как получить координаты мыши, при обработке события от клавиатуры (график QWT) Отправлено: VVN от Ноябрь 28, 2011, 17:44 вообще то не мешало бы еще проверять что qwtp->canvas() == obj в eventFilter Это все сделано. а какие координаты приходят? Что то типа х = -17672346 y = -1723523 Название: Re: Как получить координаты мыши, при обработке события от клавиатуры (график QWT) Отправлено: GreatSnake от Ноябрь 28, 2011, 22:14 Код
|