OS X прозрачные панели в Qt? - PullRequest
3 голосов
/ 25 августа 2010

Есть ли способ создать прозрачную панель, как описано в Руководстве по интерфейсу Apple для человека в Qt 4.6 (создан для OS X 10.6 / Какао)?

Если нет,Есть ли альтернативы, похожие по внешнему виду и функциям?

Я понимаю, что Qt - это кроссплатформенный инструментарий, но я хочу, чтобы мое приложение чувствовало себя как можно более "родным".

1 Ответ

2 голосов
/ 25 августа 2010

Я не пробовал на Mac, но это должно быть возможно.Вот что говорят QWidget docs :

Создание полупрозрачных окон

Начиная с Qt 4.5, стало возможным создавать окна с полупрозрачными областями в оконных системах, которые поддерживаютcompositing.

Чтобы включить эту функцию в виджете верхнего уровня, установите его атрибут Qt::WA_TranslucentBackground с помощью setAttribute() и убедитесь, что его фон закрашен непрозрачными цветами в областях, которые вы хотите сделать частично прозрачными.

Замечания по платформе:

X11: эта функция основана на использовании X-сервера, поддерживающего визуальные эффекты ARGB, и оконного менеджера компоновки.

Windows: виджет долженустановите флажок окна Qt::FramelessWindowHint, чтобы прозрачность работала.

Я представляю, что ваша панель является виджетом верхнего уровня, поэтому обязательно установите Qt::WA_TranslucentBackground, как указано выше.

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