Russian Qt Forum
Сентябрь 30, 2024, 06:22 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Можно ли в QGraphicsScene вставлять виджеты?  (Прочитано 6375 раз)
lenny
Гость
« : Февраль 18, 2011, 13:39 »

Нужно всякие лайнедиты и т.п. добавлять в сцену и чтоб пользователь мог с ними работать. Это возможно?
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #1 : Февраль 18, 2011, 13:44 »

см. QGraphicsProxyWidget
Записан

Qt 5.11/4.8.7 (X11/Win)
lenny
Гость
« Ответ #2 : Февраль 18, 2011, 13:46 »

Спасибо! щас посмотрю.
Записан
lenny
Гость
« Ответ #3 : Февраль 18, 2011, 14:05 »

Круть! Как же я сам не заметил QGraphicsScene::addWidget(QWidget*). Тока я не очень понял зачем нужен QGraphicsProxyWidget.
Записан
lenny
Гость
« Ответ #4 : Февраль 18, 2011, 14:31 »

Врубился зачем proxy: proxy->setPos(500,500); и т.п.
Записан
Paullo
Гость
« Ответ #5 : Февраль 18, 2011, 21:24 »

На всякий случай один подводный камень - с точки зрения оконного менеджера и системы эти окна окнами не являются. Поэтому хэндла у них нету. Обжёгся на этом как-то раз.
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #6 : Февраль 18, 2011, 22:22 »

Про какие окна вы говорите?
Записан

Qt 5.11/4.8.7 (X11/Win)
Paullo
Гость
« Ответ #7 : Февраль 19, 2011, 02:11 »

Извените. Виджеты имел в виду. Чего-то совсем заработался видимо. Пример из жизни - пробовал подружить GStreamer и Qt. Phonon оказался недостаточно гибок. Надо было выводить картинку c web-камеры в виджет, который внутри QGraphicsScene находился. Для этого GStreamer просил хэндл окна (нативный, в данном случае X window id, если не ошибаюсь) в которое выводить. Бился около 3х дней. Закончилось всё в построением жутчайшего велосипеда в виде ручного получения каждого кадра из GStreamer'a и ручной его посылки через event'ы.
Записан
barmaglot
Гость
« Ответ #8 : Февраль 19, 2011, 14:53 »

Вот здесь как раз по теме встраивания виджетов есть материал: http://symmetrica.net/qt4/lesson4.htm
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #9 : Февраль 19, 2011, 16:07 »

QGraphicsView состоит всего из 2-х окон: самого вью и вьюпорта. Вся отрисовка делается непосредственно во вьюпорте. Хотя, если быть совсем точным, то в пиксмапе бакинг-стора.

Цитировать
Надо было выводить картинку c web-камеры в виджет, который внутри QGraphicsScene находился.
Хм, а вот для таких целей использовать QGraphicsScene, имхо, изврат, т.к. последний ещё тот тормоз.
Записан

Qt 5.11/4.8.7 (X11/Win)
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.047 секунд. Запросов: 22.