![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Litkevich Yuriy |
![]()
Сообщение
#51
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
а есть ещё такая штука как двойная буферизация, её можно запрещать.
|
|
|
igor_bogomolov |
![]()
Сообщение
#52
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
SABROG |
![]()
Сообщение
#53
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: ![]() ![]() ![]() |
а есть ещё такая штука как двойная буферизация, её можно запрещать. Установка флагов Qt::WA_PaintOnScreen или Qt::WA_PaintOnScreen для детей приводит к крашу, также как и w->setAutoFillBackground(false); --- Пардон, это я забыл одно место раскомментировать. В общем всё равно флаги ничем не помогли, autoFillBackground(false) сделал у QListWidget'a фон списка не белым, а как у основного окна. Сообщение отредактировал SABROG - 27.5.2009, 18:06 |
|
|
igor_bogomolov |
![]()
Сообщение
#54
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
SABROG, да объясни же, чем не устраивает полученное решение
|
|
|
SABROG |
![]()
Сообщение
#55
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: ![]() ![]() ![]() |
SABROG, да объясни же, чем не устраивает полученное решение Ну вот если рисовать QPixmap, он же по идее будет рисоваться медленней с ростом количества окон, да и на скрине почему-то в некоторых местах у тебя синяя рамка перекрывает красные линии. К тому же как я уже говорил тут возникает проблема с прозрачностью. Прозрачный фон у виджетов накладывается друг на друга и в итоге я получаю совсем другой цвет. Да и сама по себе проблема до конца не решена. Сообщение отредактировал SABROG - 27.5.2009, 18:12 |
|
|
igor_bogomolov |
![]()
Сообщение
#56
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
на скрине почему-то в некоторых местах у тебя синяя рамка перекрывает красные линии В моем примере фильтр устоновлен для textedit->viewport(), для самого textedit - не установлен. Если восползоваться твоей функцией childsRecursive, все будет рисоваться нормально.проблема с прозрачностью Эт я не проверял. Надо будет посмотреть.Да и сама по себе проблема до конца не решена. Поподробнее. Что не решено. Для чего понадобилось рисовать поверх виджетов? Только для этого |
|
|
SABROG |
![]()
Сообщение
#57
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: ![]() ![]() ![]() |
Много чего придумать можно. Тот же эффект падающего снега. Разные спец.эффекты.
Похоже уже есть смысл копать в сторону backingstore и paintEngine. Сообщение отредактировал SABROG - 27.5.2009, 20:00 |
|
|
igor_bogomolov |
![]()
Сообщение
#58
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
это альфа-канал, который ставится каждому чайлду. Но из-за того, что прозрачные бэкграунды наслаиваются друг на друга местами альфа-канал суммируется и происходит лажа. Назнач для кождого такого виджета, с которым лажа происходит, свойство setAutoFillBackground(true). Лажа пропадет ![]() ![]() |
|
|
SABROG |
![]()
Сообщение
#59
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: ![]() ![]() ![]() |
Ладно, чтобы завершить тему, можешь выложить пример, где бы поверх чайлдов рисовалась картинка с альфа-каналом?
А то я уже устал, если честно. |
|
|
igor_bogomolov |
![]()
Сообщение
#60
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
Ладно, чтобы завершить тему, можешь выложить пример, где бы поверх чайлдов рисовалась картинка с альфа-каналом? Могу конечно. Подчищу проек немного от экспериментов, выложу.А то я уже устал, если честно. Это твоя тема, тебе решать. Я лишь помочь пытался, в силу своих возможностей.Transparent Backgrounds in Qt 4.1 |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 16.2.2025, 21:23 |