Skip to main content

PyQt color picker dialog

Project description

pyqt-color-picker

PyQt color picker dialog which contains color picker widget.

You can either use dialog or widget.

Requirements

PyQt5 >= 5.8

Setup

python -m pip install pyqt-color-picker

Class, Method Overview

ColorPickerDialog

  • ColorPickerDialog(color=QColor(255, 255, 255), orientation='horizontal')

    • color argument's type can be QColor or str.

    • orientation argument decides the overall layout direction of the dialog. There are two values. 'horizontal', 'vertical'. See layout preview below.

  • getColor() -> QColor - get the color.

If you only want to use this as a part of window(not as whole dialog), use ColorPickerWidget(color=QColor(255, 255, 255), orientation='horizontal'). See the example below.

ColorPickerWidget

  • colorChanged(color: QColor) - signal. After color being changed, this will be emitted.

  • getCurrentColor() -> QColor - get the current color.

Layout type

Horizontal

image

Vertical

image

Usage

Dialog

Code Sample

dialog = ColorPickerDialog()

reply = dialog.exec()

if reply == QDialog.Accepted: 

  color = dialog.getColor() # return type is QColor

  //..

Result

https://user-images.githubusercontent.com/55078043/144693507-7b078c86-8c71-4df5-869f-8380885b9108.mp4

Using as a part of window

Code Sample

from PyQt5.QtWidgets import QMainWindow, QApplication, QHBoxLayout, QWidget, QTextEdit

from pyqt_color_picker import ColorPickerWidget





class Window(QMainWindow):

    def __init__(self):

        super().__init__()

        self.__initUi()



    def __initUi(self):

        self.__te = QTextEdit()

        self.__colorPicker = ColorPickerWidget(orientation='vertical')

        self.__colorPicker.colorChanged.connect(self.colorChanged) # when color has changed, call the colorChanged function

        lay = QHBoxLayout()

        lay.addWidget(self.__te)

        lay.addWidget(self.__colorPicker)

        mainWidget = QWidget()

        mainWidget.setLayout(lay)

        self.setCentralWidget(mainWidget)



    def colorChanged(self, color):

        self.__te.setStyleSheet(f'QTextEdit {{ color: {color.name()} }}')





if __name__ == "__main__":

    import sys



    app = QApplication(sys.argv)

    ex = Window()

    ex.show()

    sys.exit(app.exec_())

Result

https://user-images.githubusercontent.com/55078043/189460590-18bc80b5-fb48-43f7-891f-dd6cf48243ee.mp4

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyqt-color-picker-0.0.20.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

pyqt_color_picker-0.0.20-py3-none-any.whl (11.0 kB view details)

Uploaded Python 3

File details

Details for the file pyqt-color-picker-0.0.20.tar.gz.

File metadata

  • Download URL: pyqt-color-picker-0.0.20.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.4

File hashes

Hashes for pyqt-color-picker-0.0.20.tar.gz
Algorithm Hash digest
SHA256 93e5c332c58fb7f7d0bed4d0e5a14b7ea83481ee2f8963a5e9a0cba48c3e537e
MD5 d52bdc314dd77f765d59c8a19fd2da2d
BLAKE2b-256 e85adc780c7a7e5fbebb5a66d3883ccfa09f4877d17fde5865033d3e35205522

See more details on using hashes here.

File details

Details for the file pyqt_color_picker-0.0.20-py3-none-any.whl.

File metadata

File hashes

Hashes for pyqt_color_picker-0.0.20-py3-none-any.whl
Algorithm Hash digest
SHA256 1c9e4dd96d120e380313d768124b5c56eae718607d8531461ca9a97c26b3eabc
MD5 c7f61565826c51615ca3cc6445bd9030
BLAKE2b-256 9b7713832956e215783497f44e13ed68f52d70b738c39c91f35b6925351546b3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page