Название: [3.3.4]Опять прозрачность Отправлено: swizar от Май 26, 2006, 17:31 Добрый все день.
Столкнулся с такой проблемой: Код:
Вот такое решение. cp_pixmap определен в конструкторе имеет фиксированный размер. bkg_img указатель на Qimage родительского окна т.е. на фон видгета. Проблема: в Linux работает так как я ожидал, т.е. имеется прозрачнасть, степень прозрачности зависит соответственно от стиля кисти котой закрашивается весь видгет. В Windows все закрашено серым с разной интенсивностью. Т.е. Получается что вместо моего фона рисуется стандартный фон видгета. (да забыл написать в конструктор передается флаг "Qt::WStyle_NoBorder | Qt::WRepaintNoErase | Qt::WNoAutoErase | Qt::WStyle_Customize"). Почему такая хрень получается ? добавлено спустя 6 часов 42 минуты: 1. Забыл указать что версия Qt 3.3.4. Я понимаю что тема не нова, но пожалуйста кто знает дайте ссылку на решение проблемы. Я сегодня потратил все утро на поиски в форуме, но подходящего для себя решения не нашел, в основном было о Qt 4. А она все-таки достаточно сильно отличается от 3-ки. И потом в Linux код все-таки работает да и в Windows, копирование фоновой картинки в widget происходит, а потом когда рисуется рект на все изображение кистью Qt::Dense4Pattern происходит стирание фона. Почему? Я пробовал явно выставлять setBackgroundMode для pixmap в транспарент, не помогло.... 2. Может кто подскажет в принципе другое решение. Мне надо сделать прозрачный (затемненный) popupmenu. Я и Шлее почитал про прозрачность и форум, но что-то не уловил, например как сделать в принципе стандартный QPopupMenu элемент, но с полупрозрачным фоном? |