En este artículo veremos cómo podemos obtener el color seleccionado del widget QColorDialog. El color seleccionado es el color que el usuario seleccionó al hacer clic en el botón Aceptar o equivalente.
Nota: este color no siempre es el mismo que el que tiene la propiedad currentColor, ya que el usuario puede elegir diferentes colores antes de seleccionar finalmente el que va a usar.
Para hacer esto usamos selectedColor
el método con el objeto QColorDialog
Sintaxis: dialog.selectedColor()
Argumento: no requiere argumento
Devoluciones: Devuelve el objeto QColor
A continuación se muestra la implementación.
# 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) # 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 value = dialog.selectedColor() # setting text to the label label.setText("Selected Color : " + str(value)) color = value # 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) # create pyqt5 app App = QApplication(sys.argv) # create the instance of our Window window = Window() # start the app sys.exit(App.exec())
Producción :
Publicación traducida automáticamente
Artículo escrito por rakshitarora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA