crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Совмещение виджетов и opengl
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
KuvshinoF Дата 28.5.2020, 17:37
  Спасибо, буду пробовать
Алексей1153 Дата 28.5.2020, 10:08
 
Цитата(KuvshinoF @ 28.5.2020, 11:53) *
а положить поверх одной gl-сцены виджеты не выходит.


нормально выходит всё (у меня всё создано с редактора, но можно и без него. Родительство расставил вручную, см. код)

Прикрепленное изображение


MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    ui->pushButton->setParent(ui->openGLWidget);
    ui->label->setParent(ui->openGLWidget);
}
KuvshinoF Дата 28.5.2020, 9:53
  Ну заводить для каждой стрелки свою opengl-сцену (QOpenGLWidget) точно не лучший вариант наверное, не оптимальный, а положить поверх одной gl-сцены виджеты не выходит.
Алексей1153 Дата 28.5.2020, 9:47
  KuvshinoF, редактор форм и компоновщик в помощь )
Можно и вручную накидать, если не лень

Прикрепленное изображение


ну или поверх одного виджета opengl создать чайлды - лейблы и разместить без компоновщиков. Тогда они, теоретически, будут всегда поверх. Но за координатами нужно будет следить вручную
KuvshinoF Дата 27.5.2020, 12:17
  На форме есть 5 виджетов (квадратные QLabel-ы), расположенные в строку - между каждой из их пары надо нарисовать opengl-стрелку(функция отрисовки стрелки есть). Как это сделать, то есть совместить opengl-сцену с, получается что, наложенными на нее виджетами? Виджеты должны быть именно виджетами, а не opengl-рисованными квадратами, так как надо будет обрабатывать их онклик, да, можно и у opengl-сцены обработать mousePressEvent, но тогда как определить на какой именно квадрат(типа QLabel) кликнули? по координатам мыши проверять как-то не очень объектно-ориентированно, поэтому элементы для онклика должны быть отдельными объектами, т.е. виджетами.
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 18.4.2024, 22:54