Russian Qt Forum

Qt => OpenGL => Тема начата: Петр от Август 03, 2014, 19:26



Название: QGLWidget
Отправлено: Петр от Август 03, 2014, 19:26
Доброго времени суток. Озадачен вопросом как добавить QGLWidget В макет формы созданой
в дизайнере QtCreator`a :-\


Название: Re: QGLWidget
Отправлено: ammaximus от Август 04, 2014, 17:56
В креаторе нет QGLWidget, это связано с тем, что от этого класса нужно наследоваться, чтобы реализовать метод paintGL. В противном случае сущность не имеет смысла. Экземпляр своего наследника ты можешь вставить так:
1. Добавь пустой лэйаут в нужное место формы и назови его осмысленно (например qgllayout)
2. Уже в классе формы (программно) после функции setupUI создай экземпляр своего наследника (instance)
3. qgllayout->addWidget(instance)

Для решения задачи так, как она поставлена есть более извращенное решение http://qt-project.org/forums/viewthread/38796


Название: Re: QGLWidget
Отправлено: __Heaven__ от Август 04, 2014, 18:07
Я делаю так:
-создаю на месте будущего виджета надпись.
-в коде меняю надпись на свой виджет c gjvjom.     layout()->replaceWidget()
-замененной метке присваиваю родителя 0 и высвобождаю память от неё.


Название: Re: QGLWidget
Отправлено: navrocky от Август 04, 2014, 19:20
1. Добавь пустой лэйаут в нужное место формы и назови его осмысленно (например qgllayout)
2. Уже в классе формы (программно) после функции setupUI создай экземпляр своего наследника (instance)
3. qgllayout->addWidget(instance)

Не обязательно так сложно, в designer есть специальный функционал для этого:

1. Кладешь QWidget
2. В контекстном меню "Преобразовать в"
3. Указываешь свой класс, унаследованный от QGLWidget, и его хедер. => кнопка "Добавить"
4. Профит


Название: Re: QGLWidget
Отправлено: __Heaven__ от Август 04, 2014, 20:02
Вот же шь....
Не знал :)


Название: Re: QGLWidget
Отправлено: ammaximus от Август 04, 2014, 21:20
Цитировать
Не обязательно так сложно, в designer есть специальный функционал для этого:

1. Кладешь QWidget
2. В контекстном меню "Преобразовать в"
3. Указываешь свой класс, унаследованный от QGLWidget, и его хедер. => кнопка "Добавить"
4. Профит


Ха, ссылку разместил, а не прочитал, я не подумал даже про собственные хидеры