Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Igors от Январь 19, 2015, 15:21



Название: Перерисовки QOpenGLWidget
Отправлено: Igors от Январь 19, 2015, 15:21
Добрый день

Сделал простой пример (аттач) - вывожу координаты мыши когда она двигается по QOpenGLWidget. Вопрос:

- почему QOpenGLWidget перерисовывается когда совершенно др контрол рисуется в том же окне?

Правду сказать, растерялся :'( В Qt обычно все очень разумно, практично, а тут... Ну не могут же они не понимать что OpenGL рисование - операция очень дорогая. Но что я делаю не так, где умудрился ошибиться в простом тесте? Или имеется ввиду надо самому решать когда рисовать? Но никаких указаний на это в букваре не нашел.

Спасибо


Название: Re: Перерисовки QOpenGLWidget
Отправлено: __Heaven__ от Январь 19, 2015, 15:49
Забавно.
Эта штука срабатывает даже по нажатию на Tab


Название: Re: Перерисовки QOpenGLWidget
Отправлено: __Heaven__ от Январь 19, 2015, 15:54
При потере фокуса окно перерисовывается дважды. При получении тоже дважды. И по нажатию на Tab тоже.


Название: Re: Перерисовки QOpenGLWidget
Отправлено: Igors от Январь 19, 2015, 16:28
При потере фокуса окно перерисовывается дважды. При получении тоже дважды. И по нажатию на Tab тоже.
Забавно.
Эта штука срабатывает даже по нажатию на Tab
А знаете - меня это почему-то совсем не радует, и забавным не кажется  >:(


Название: Re: Перерисовки QOpenGLWidget
Отправлено: __Heaven__ от Январь 19, 2015, 16:34
Я бы поставил заглушку.
Ранее не сталкивался с QOpenglWidget... Тут даже нет ручного переключения буферов!!!