Как получить цвет фона диалога / окна?
Как получить цвет фона диалога / окна в формате RGB?
3 ответа
Решение
Использование QWidget::palette
получить доступ к палитре виджета и QPalette::color
чтобы получить цвет фона:
color = widget.palette().color(QPalette.Background)
print color.red(), color.green(), color.blue()
http://qt-project.org/doc/qt-4.8/qwidget.html
http://qt-project.org/doc/qt-4.8/qpalette.html
http://qt-project.org/doc/qt-4.8/qpalette.html
QPalette::Window - 10 - Общий цвет фона.
QPixmap::grabWindow();
может получить любую часть рабочего стола.
Надеюсь, это поможет.
import sys
from PyQt4 import QtGui, QtCore
class MainWin(QtGui.QDialog):
def __init__(self,parent=None):
QtGui.QDialog.__init__(self,parent)
pal=QtGui.QPalette()
role = QtGui.QPalette.Background
pal.setColor(role, QtGui.QColor(0, 0, 255))
self.setPalette(pal)
или с таблицей стилей
self.setStyleSheet("background:blue)