Open In App

PyQt5 QColorDialog - Accepting the color

Last Updated : 24 Jun, 2020
Comments
Improve
Suggest changes
Like Article
Like
Report
In this article we will see how we can accept the QColorDialog widget. Accepting hides the modal dialog and sets the result code to accepted, it is same when user press 'OK' button. This method calls the finished signal In order to do this we use accept method with the QColorDialog object
Syntax : dialog.accept() Argument : It takes no argument Return : It returns None
Below is the implementation Python3 1==
# importing libraries
from PyQt5.QtWidgets import * 
from PyQt5 import QtCore, QtGui
from PyQt5.QtGui import * 
from PyQt5.QtCore import * 
import sys


class Window(QMainWindow):

    def __init__(self):
        super().__init__()

        # setting title
        self.setWindowTitle("Python ")

        # setting geometry
        self.setGeometry(100, 100, 500, 400)

        # calling method
        self.UiComponents()

        # showing all the widgets
        self.show()


    # method for components
    def UiComponents(self):

        # creating a QColorDialog object
        dialog = QColorDialog(self)

        # setting current color to the dialog
        dialog.setCurrentColor(Qt.red)

        # accepting the color
        dialog.accept()

        # executing the dialog
        # dialog.exec_()


        # creating label
        label = QLabel("GeeksforGeeks", self)

        # setting geometry to the label
        label.setGeometry(100, 100, 300, 80)

        # making label multi line
        label.setWordWrap(True)

        # setting stylesheet of the label
        label.setStyleSheet("QLabel"
                            "{"
                            "border : 5px solid black;"
                            "}")

        # getting the selected color
        color = dialog.selectedColor()

        # setting graphic effect to the label
        graphic = QGraphicsColorizeEffect(self)

        # setting color to the graphic
        graphic.setColor(color)

        # setting graphic to the label
        label.setGraphicsEffect(graphic)

        # setting text to the label
        label.setText("Accepted Color : " + str(color))



# create pyqt5 app
App = QApplication(sys.argv)

# create the instance of our Window
window = Window()

# start the app
sys.exit(App.exec())
Python3 1==
# Write Python3 code here
Output : Note : In this implementation we didn't execute the color dialog because we set the current color and accept the color programmatically will make it selected color instead of white which is default

Next Article

Similar Reads