Russian Qt Forum
Сентябрь 30, 2024, 12:40 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QWT  (Прочитано 4184 раз)
demaker
Птица говорун
*****
Offline Offline

Сообщений: 960


Просмотр профиля
QWT
« : Март 26, 2013, 15:48 »

Подскажите, как получить координаты курсора на графике?
Записан
madRoger
Гость
« Ответ #1 : Март 26, 2013, 20:00 »

Код:
QPoint QwtPicker::trackerPosition() const
..вернет координаты в пикселах.

Чтобы преобразовать в координаты графика:
Код:
QPointF QwtPlotPicker::invTransform (const QPoint & pos) const
Записан
demaker
Птица говорун
*****
Offline Offline

Сообщений: 960


Просмотр профиля
« Ответ #2 : Март 27, 2013, 10:31 »

делаю вот так, пытаюсь сделать точку в координатах графика

Код:
d_picker->invTransform( d_picker->trackerPosition() );

выдает ошибку
Код:
d:\qwt-6.0.1\src/qwt_plot_picker.h: In member function 'void Plot::sl_newScale1(double)':
d:\qwt-6.0.1\src/qwt_plot_picker.h:98: error: 'QPointF QwtPlotPicker::invTransform(const QPoint&) const' is protected

что делать???
Записан
madRoger
Гость
« Ответ #3 : Март 27, 2013, 10:40 »

Наследоваться и в своем public-методе использовать invTransform.
Записан
demaker
Птица говорун
*****
Offline Offline

Сообщений: 960


Просмотр профиля
« Ответ #4 : Март 27, 2013, 10:46 »

т.е
так
Код:
class PlotPicker:: public QwtPlotPicker
{
  ...
piublic:
    double invT_x() const
    {
         return invTransform(trackerPosition() ).x();
    }
};

Записан
madRoger
Гость
« Ответ #5 : Март 27, 2013, 10:50 »

yes
Записан
demaker
Птица говорун
*****
Offline Offline

Сообщений: 960


Просмотр профиля
« Ответ #6 : Март 27, 2013, 10:52 »

 Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.042 секунд. Запросов: 23.