Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
piton |
29.9.2009, 17:16
Сообщение
#11
|
|
Новичок Группа: Новичок Сообщений: 7 Регистрация: 29.9.2009 Пользователь №: 1125 Спасибо сказали: 0 раз(а) Репутация: 0
|
Цитата(BRE @ 29.9.2009, 18:05) Link Думаю стоит смотреть в сторону QPaintEngine, и делать своего наследника... Я так и не смог найти какого-либо примера или информации как это можно сделать. Хвостов у виджета в сторону QPaintEngine тоже не обнаружил. Если есть какие либо мысли, с удовольствие выслушаю. Цитата(BRE @ 29.9.2009, 18:05) Link Думаю стоит смотреть в сторону QPaintEngine, и делать своего наследника... Я так и не смог найти какого-либо примера или информации как это можно сделать. Хвостов у виджета в сторону QPaintEngine тоже не обнаружил. Если есть какие либо мысли, с удовольствие выслушаю. |
|
|
|
|
BRE |
29.9.2009, 17:23
Сообщение
#12
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44
|
Цитата(piton @ 29.9.2009, 18:08) Link Я так и не смог найти какого-либо примера или информации как это можно сделать. Хвостов у виджета в сторону QPaintEngine тоже не обнаружил. Если есть какие либо мысли, с удовольствие выслушаю. Мысль следующая.... Любой виджет это QPaintDevice, в начале рисования он создает QPainter, которому указывает себя в качестве поверхности для рисования. Этот вызов идет в QPaintEngine::begin( QPaintDevice * pdev ). Это виртуальный метод, если его переопределить, то можно попробовать использовать вместо pdev свое устройство отображения. Это только мысли. Сообщение отредактировал BRE - 29.9.2009, 18:13 |
|
|
|
|
rnd |
29.9.2009, 17:33
Сообщение
#13
|
|
Студент ![]() Группа: Участник Сообщений: 54 Регистрация: 22.7.2009 Пользователь №: 930 Спасибо сказали: 1 раз(а) Репутация: 0
|
Самое просто в таких случаях - смотреть исходники куте и дебажится
|
|
|
|
|
Litkevich Yuriy |
29.9.2009, 17:59
Сообщение
#14
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
piton, тут меня одна мыслишка посетила. Значится баловался я QWebClient'ом, Link.
Смысл его простой, вместо корневого виджета в своей программе, например, QWidget, устанавливаешь QWebClient. Компилируешь и запускашь. Открываешь браузер и вводишь адрес: Link и видешь в браузере свою программу (и она работает). Link Суть мысли: я заметил, что работает это так: запускашь свою программу, появляется её окно, но как только ты в браузере обращаешся к ней. Окно обычное исчезает. Стало бвть рисование проболжается не на окошке. Может там почерпнёшь, чтони-будь интересное? |
|
|
|
|
BRE |
29.9.2009, 19:02
Сообщение
#15
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44
|
2 piton
Перечитал первый пост темы и у меня возник вопрос, а почему для всего этого не использовать QGraphicsView+QGraphicsScene. Эта связка и обеспечивает необходимый функционал. Глубина элементов есть, виджет на сцену поместить можно. |
|
|
|
|
piton |
30.9.2009, 13:02
Сообщение
#16
|
|
Новичок Группа: Новичок Сообщений: 7 Регистрация: 29.9.2009 Пользователь №: 1125 Спасибо сказали: 0 раз(а) Репутация: 0
|
Цитата(rnd @ 29.9.2009, 18:33) Link Самое просто в таких случаях - смотреть исходники куте и дебажится Дебажили, откуда и поняли, что QT рисует на главное окно само. Цитата(Litkevich Yuriy @ 29.9.2009, 18:59) Link piton, тут меня одна мыслишка посетила. Значится баловался я QWebClient'ом, Link. Смысл его простой, вместо корневого виджета в своей программе, например, QWidget, устанавливаешь QWebClient. Компилируешь и запускашь. Открываешь браузер и вводишь адрес: Link и видешь в браузере свою программу (и она работает). Link Суть мысли: я заметил, что работает это так: запускашь свою программу, появляется её окно, но как только ты в браузере обращаешся к ней. Окно обычное исчезает. Стало бвть рисование проболжается не на окошке. Может там почерпнёшь, чтони-будь интересное? Сейчас почитаем, потом отпишу о результатах. Цитата(BRE @ 29.9.2009, 20:02) Link 2 piton Перечитал первый пост темы и у меня возник вопрос, а почему для всего этого не использовать QGraphicsView+QGraphicsScene. Эта связка и обеспечивает необходимый функционал. Глубина элементов есть, виджет на сцену поместить можно. Для этого надо переделать все, а проект уже идет не первый год. Может в следующих версиях на этом и будем основываться. |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 17.12.2025, 16:06 |