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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: grabWidget грабит прямоугольную область с фоном. Как сделать без фона?  (Прочитано 2444 раз)
Deiv
Гость
« : Январь 21, 2008, 09:00 »

Код:
QPixmap img = QPixmap::grabWidget(v_comboBox_hide);
v_label->setPixmap(img);
На рисунке видно, что 1-й комбобокс и пушбатон отличаются от 2-го комбобокса.
у того вокруг углов серый фон.
Можно както так ограбить виджет, чтобы эти лишние пикселы были прозрачны?

ЗЫ:
мой частный случай решен
v_comboBox_hide создавался в памяти, на экран не выводился, хваталась дефолтная палитра.
назначил ему палитру виджета на котором он появится и уголки перекрасились в синий.
Код:
QPalette v_palette=palette();
v_palette.setColor(QPalette::Background, QColor(20, 60, 150, 255) );
setPalette(v_palette);
// здесь, вновь сазданому комбобоксу назначена палитра основного виджета
v_comboBox_hide = new QComboBox;
v_comboBox_hide->setPalette(v_palette);

ЗЫЫ:
никак нельзя этот фон прозрачным назначить?
чтобы при грабеже не дергать палитру виджета, куда будет помещаться результат.
« Последнее редактирование: Январь 21, 2008, 14:30 от Deiv » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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