Совмещение виджетов и opengl |
Здравствуйте, гость ( Вход | Регистрация )
Совмещение виджетов и opengl |
KuvshinoF |
27.5.2020, 12:17
Сообщение
#1
|
Студент Группа: Участник Сообщений: 74 Регистрация: 25.7.2013 Пользователь №: 3887 Спасибо сказали: 0 раз(а) Репутация: 0 |
На форме есть 5 виджетов (квадратные QLabel-ы), расположенные в строку - между каждой из их пары надо нарисовать opengl-стрелку(функция отрисовки стрелки есть). Как это сделать, то есть совместить opengl-сцену с, получается что, наложенными на нее виджетами? Виджеты должны быть именно виджетами, а не opengl-рисованными квадратами, так как надо будет обрабатывать их онклик, да, можно и у opengl-сцены обработать mousePressEvent, но тогда как определить на какой именно квадрат(типа QLabel) кликнули? по координатам мыши проверять как-то не очень объектно-ориентированно, поэтому элементы для онклика должны быть отдельными объектами, т.е. виджетами.
|
|
|
Алексей1153 |
28.5.2020, 9:47
Сообщение
#2
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
|
|
|
KuvshinoF |
28.5.2020, 9:53
Сообщение
#3
|
Студент Группа: Участник Сообщений: 74 Регистрация: 25.7.2013 Пользователь №: 3887 Спасибо сказали: 0 раз(а) Репутация: 0 |
Ну заводить для каждой стрелки свою opengl-сцену (QOpenGLWidget) точно не лучший вариант наверное, не оптимальный, а положить поверх одной gl-сцены виджеты не выходит.
|
|
|
Алексей1153 |
28.5.2020, 10:08
Сообщение
#4
|
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
а положить поверх одной gl-сцены виджеты не выходит. нормально выходит всё (у меня всё создано с редактора, но можно и без него. Родительство расставил вручную, см. код)
|
|
|
||
KuvshinoF |
28.5.2020, 17:37
Сообщение
#5
|
Студент Группа: Участник Сообщений: 74 Регистрация: 25.7.2013 Пользователь №: 3887 Спасибо сказали: 0 раз(а) Репутация: 0 |
Спасибо, буду пробовать
|
|
|
Текстовая версия | Сейчас: 24.11.2024, 20:49 |