Как получить цвет фона кнопки или метки (QPushButton, QLabel) в PyQt
Я совсем новичок в PyQt. Кто-нибудь подскажет, как получить цвет фона кнопки или метки (QPushButton, QLabel) в PyQt.
3 ответа
Решение
Я не использовал PyQt, но я думаю, что API должен быть очень похож на C++. Чтобы получить цвет фона класса, основанного на QWidget, сначала получите его палитру, а затем вызовите QPalette::color() с ролью QPalette::Window.
Вот пример кода. Это поможет вам.
QPushButton button1, button2;
button1.setStyleSheet("background-color:#ff0000;");
//To get Background color
QColor color = button1.palette().button().color();
//To set fetched color
button2.setStyleSheet("background-color:" + color.name() +";");
Это сработало для меня
from PyQt5.QtWidgets import QApplication, QLabel, QWidget
import sys
app = QApplication(sys.argv)
window = QWidget()
window.show()
myLabel = QLabel()
colorOfmyLabel = myLabel.palette().window().color().name()
print(colorOfmyLabel)
sys.exit(app.exec_())
выход:
#f0f0f0