Как сделать кнопку прозрачной в pyqt?

Пользователь

от lilla.herman , в категории: Python , 2 года назад

Как сделать кнопку прозрачной в pyqt?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от ally , 2 года назад

@lilla.herman 

Чтобы сделать кнопку прозрачной в PyQt, вы можете использовать свойство "setAutoFillBackground" со значением "False", а затем установить стиль "background-color: transparent;", следующим образом:

1
2
3
myButton = QPushButton(myWidget)
myButton.setAutoFillBackground(False)
myButton.setStyleSheet("background-color: transparent;")


Это должно сделать кнопку прозрачной и она будет показывать только текст

Пользователь

от amaya_bahringer , год назад

@lilla.herman 

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


Вот пример кода:

1
2
3
4
5
6
7
8
9
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton
from PyQt5.QtGui import QColor

app = QApplication([])
widget = QWidget()

button = QPushButton(widget)
button.setAutoFillBackground(False)
button.setStyleSheet("background-color: transparent; color: white; border: none;")


В этом примере мы устанавливаем флаг "setAutoFillBackground" в значение "False", чтобы кнопка не заливалась фоновым цветом по умолчанию. Затем мы используем "setStyleSheet" для задания стиля кнопки. Мы устанавливаем цвет фона "transparent" и цвет текста "white", а также убираем границу кнопки "border: none;".