繁体   English   中英

Python和PyQt5:如何获取帧的RGB颜色值?

[英]Python & PyQt5 : How to get RGB color values of a frame?

我正在尝试构建一个关于获取所选颜色的RGB值的PyQt5应用程序。 我写了一个代码,你可以选择一种颜色,我可以在一个框架中显示颜色;

import sys
from pprint import pprint
from PyQt5.QtWidgets import QWidget,QPushButton,QFrame,QColorDialog,QApplication
from PyQt5.QtGui import QColor

class TutorialWindow(QWidget):
    def __init__(self):
        super().__init__()
        selected_color = QColor(0,0,255)
        self.button = QPushButton("Choose color",self)
        self.button.move(25,25)
        self.button.clicked.connect(self.showColorDialog)

        self.frame= QFrame(self)
        self.frame.setStyleSheet("QWidget { background-color: %s}" %selected_color.name())
        self.frame.setGeometry(150,22,50,50)
        self.setGeometry(300,300,250,200)

    def showColorDialog(self):
        selected_color = QColorDialog.getColor()
        if selected_color.isValid():
            self.frame.setStyleSheet("QWidget { background-color: %s}" %selected_color.name())

if __name__ == '__main__':
    app = QApplication(sys.argv)
    pprint("input parameters = " + str(sys.argv))
    tutorial_window = TutorialWindow()
    tutorial_window.show()
    sys.exit(app.exec_())

但我还想要一件事。 如您所见,运行并选择颜色后; 我想打印帧的颜色的RGB值。 如何将其添加到我的代码中?

非常感谢!

我想你正在寻找类似的东西:

yourWidget.palette().highlight().color().name()

得到RGB:

yourWidget.palette().highlight().color().getRgb())

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM