Как сделать так, чтобы прозрачное окно оставалось сверху? - PullRequest
1 голос
/ 14 июля 2010

Я пытаюсь сделать так, чтобы прозрачное окно оставалось сверху (z-порядок).

Я хочу реализовать что-то вроде слоя, который указывает некоторые параметры в другой программе.

Итак, мне нужно сделать фон прозрачным, а не весь виджет с помощью функции QWidget :: setWindowOpacity.

Я нашел несколько документов об этом

  1. Прозрачные фоны в Qt 4.1

  2. Справочник по классам QWidget - Прозрачность и двойная буферизация

Первый объясняет «Новое в Qt 4.1: The Backing Store», и картинка именно то, что я хочу.

Второй объясняет более подробно об этом. (левая картинка)

Левый виджет не имеет дополнительных свойств или атрибутов виджета. Это состояние по умолчанию подходит для большинства пользовательских виджетов, использующих прозрачность, имеет неправильную форму или не закрашивает всю область непрозрачной кистью.

Но я не знаю, как это сделать. Я использую Qt 4.6 B.T.W.

1 Ответ

0 голосов
/ 01 сентября 2011

Взято из ответа ctd, как предложено в комментариях: QT4: прозрачное окно с закругленными углами

this->setAttribute(Qt::WA_TranslucentBackground, true); 
...