Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Qt
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
Слепой Уфолог
3 / 3 / 0
Регистрация: 04.09.2013
Сообщений: 18
1

Qt5 OpenGL и виджеты

14.09.2013, 02:58. Просмотров 2369. Ответов 4
Метки нет (Все метки)

Товарищи суслики,

Можно ли при помощи <QtGui> в Qt 5.1+ создать виджет (а не все окно) под OpenGL так как это можно (было) через модуль <OpenGL> (класс QGLWidget) ?

Не хотел бы использовать модуль <OpenGL> поскольку является deprecated начиная с версии Qt 5.1
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.09.2013, 02:58
Ответы с готовыми решениями:

OpenGL в параллельном потоке Qt5
Приветствую всех, мне необходимо отображать в программе большое количество...

Виджеты
Никак не могу понять что такое виджеты QWidget *win = new QWidget(); ...

Qt-Виджеты
Скажите, как сделать виджет, например кнопку, дочерним элементом окна, без...

Чем отличаются готовые сборки Qt под Win + MSVC с OpenGL и без OpenGL?
Ну вопрос собственно в том, что мне не очень понятно, что же в сборке кьюте без...

QFtp и Qt5
Как всем известно, Qt5 отказалось от QFtp. Вместо нее предлагается...

4
Dmitriy_M
1429 / 1309 / 131
Регистрация: 20.03.2009
Сообщений: 4,678
Записей в блоге: 11
14.09.2013, 10:26 2
Можно, подробности с примерами тут
1
Слепой Уфолог
3 / 3 / 0
Регистрация: 04.09.2013
Сообщений: 18
14.09.2013, 12:57  [ТС] 3
Шпашиба, это я читал, там говорится про QWindow а не QWidget.
0
kamre
127 / 131 / 11
Регистрация: 25.12.2011
Сообщений: 443
14.09.2013, 17:56 4
Цитата Сообщение от Слепой Уфолог Посмотреть сообщение
там говорится про QWindow а не QWidget
Есть функция QWidget::createWindowContainer, с ее помощью создается QWidget, который является контейнером для QWindow.

Примерно так можно поправить main из того примера выше по ссылке:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
int main(int argc, char **argv)
{
    QApplication app(argc, argv);
 
    QSurfaceFormat format;
    format.setSamples(16);
 
    auto triangle = new TriangleWindow();
    triangle->setFormat(format);
    triangle->setAnimating(true);
 
    auto container = QWidget::createWindowContainer(triangle);
 
    auto stopStart = new QPushButton("Stop");
    QObject::connect(stopStart, &QPushButton::clicked, [=] () {
        if (stopStart->text() == "Stop") {
            stopStart->setText("Start");
            triangle->setAnimating(false);
        } else {
            stopStart->setText("Stop");
            triangle->setAnimating(true);
        }
    });
 
    auto layout = new QVBoxLayout();
    layout->addWidget(stopStart);
    layout->addWidget(container);
 
    QWidget window;
    window.setLayout(layout);
    window.resize(640, 480);
    window.show();
 
    return app.exec();
}
1
Слепой Уфолог
3 / 3 / 0
Регистрация: 04.09.2013
Сообщений: 18
14.09.2013, 18:53  [ТС] 5
Спасибо, Родина вас не забудет.

А может есть лучший подход для: все в одном окне - просмотр атома через виджет что рисует через OpenGL и (обычные) виджеты для настроек и контроля прорисовки атома, например:

[sc*****l.png]
0
14.09.2013, 18:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.09.2013, 18:53

Qt5 + firebird
Здравствуйте. Почитал в инете как использовать firebird в Qt и попробовав...

Qt5 + Raspberry Pi
Кто-нибудь может подсказать и описать, каким образом я могу собрать сам Qt5 под...

Qt5 и QFtp
Здравствуйте Пишу программу, которая будет скачивать файлы с FTP. Использую...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru