Форма виджета Qt из изображения - PullRequest
1 голос
/ 07 мая 2011

Как я могу создать виджет или окно, которое будет просто прозрачным изображением?Я имею в виду что-то вроде этой программы: sakura script player Я попробовал:

label = QtGui.QLabel(None,
                    QtCore.Qt.FramelessWindowHint | QtCore.Qt.WindowStaysOnTopHint)
label.setPixmap(QtGui.QPixmap('c:\transparent.png'))
label.setScaledContents(True)

label.show()

, но он создает просто прямоугольное окно, несмотря на прозрачность изображения

1 Ответ

2 голосов
/ 07 мая 2011

Вы бы использовали комбинацию QWidget::setMask() и одну из функций, которые создают QBitmap маски из QPixmap s:

Раньше в дистрибутиве Qt был подобный xpenguin пример, но они заменили его на фигурные часы (если у вас есть Qt 3.3, посмотрите examples/tux/tux.cpp).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...