Прозрачный QLabel с растровым изображением
У меня есть QLabel, и я положил на него изображение с помощью setpixmap(). Это изображение имеет альфа-канал.
QLabel находится на QWidget, у которого есть изображение границы, заданное изображением (так, чтобы изображение масштабировалось, чтобы заполнить QWidget).
На прозрачных частях QLabel результатом является не изображение, указанное в QWidget, а характеристика серого цвета для виджета "без цвета".
Мой вопрос: как мне сделать это таким образом, чтобы прозрачная часть QLabel показывала изображение границы QWidget?
Я попытался отменить фон автозаполнения, изменив цвет фона QLabel на белый прозрачный, но ничего не помогло.
1 ответ
Вам необходимо установить атрибуты виджета и флаги окна соответствующим образом:
С помощью QWidget::setAttribute()
и Qt:: WidgetAttribute...
Qt::WA_TranslucentBackground
должен быть установлен в true.
Наряду с изучением Пример оконных флагов должен сильно помочь.
Если вы просто ищете один виджет, который рисует безрамное изображение...
Вот прекрасный пример: