Страницы

Поиск по вопросам

среда, 12 декабря 2018 г.

Полупрозрачный фон виджета в QT

Необходимо сделать фон виджета QLabel полупрозрачным. Подскажите, как это можно реализовать? opacity использовать не получается, т.к. оно может использоваться только в всплывающих окнах.


Ответ

Надо расширить класс QLabel и в новом классе переопределить метод paintEvent, вставив туда примерно такой код QPainter paint; paint.begin (this); paint.setBrush (QBrush (QColor (255, 255, 255, 180))); paint.setPen (Qt::NoPen); paint.drawRect (0, 0, width(), height()); paint.end(); В QColor последнее значение - значение альфа-канала, которое и определяет прозрачность. Меняется от 0 (полностью прозрачное) до 255.

Комментариев нет:

Отправить комментарий