2014-05-21 5 views
3

У меня есть QLabel, что я заполняю красным цветом таблицу стилей, но QLabel прямоугольный, и мне нужен круг. Я пытаюсь добавить border-radius, но это не сработает, может быть, потому, что я ставлю QLabel в formLayout.Как создать круг QLabel?

Есть ли простой способ иметь круглый QLabel с помощью таблицы стилей?

Спасибо.

EDIT: Использование изображения кажется более простым, чем сейчас.

ответ

3

Создайте изображение, которое вы используете в качестве маски, и установите его на ярлыке, вызвав setMask. в качестве documentation состояния: -

Причины только пиксели виджета, для которого точечный рисунок имеет соответствующий 1 бит, чтобы быть видимыми. Если область содержит пиксели вне прямоугольника() виджета, то элементы управления оконной системой в этой области могут быть или не быть видимыми, в зависимости от платформы

+1

Работает отлично, спасибо! –

+0

Это не очень хороший совет, так как 'setMask' действительно нужен только в окне верхнего уровня, где растровое изображение маски передается в устаревшую систему графического интерфейса, такую ​​как старый сервер X11 или Windows 95. Даже Windows XP поддерживает альфа-смешивание окна (они называют это «слоистыми» окнами). Все, что вам нужно сделать, это составить круг маскировки в качестве последнего шага рисования вашего ярлыка. Это позволит вам сглаживать края и избегать неровного внешнего вида окна. –

Смежные вопросы