dg4799 / qt-material

Material inspired stylesheet for PySide2 and PyQt5

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Qt Material

This is another stylesheet for PySide2 and PyQt5, this time looks like Material Design (close enough).

GitHub top language PyPI - License PyPI PyPI - Status PyPI - Python Version GitHub last commit CodeFactor Grade Documentation Status

There is some custom dark themes:

https://github.com/UN-GCPDS/qt-material/raw/master/docs/source/images/dark.gif

And light:

https://github.com/UN-GCPDS/qt-material/raw/master/docs/source/images/light.gif

Install

pip install qt-material

Usage

import sys
from PySide2 import QtWidgets
# from PyQt5 import QtWidgets
from qt_material import apply_stylesheet

# create the application and the main window
app = QtWidgets.QApplication(sys.argv)
window = QtWidgets.QMainWindow()

# setup stylesheet
apply_stylesheet(app, theme='dark_teal.xml')

# run
window.show()
app.exec_()

Themes

from qt_material import list_themes

list_themes()
light_yellow.xml
light_teal.xml
dark_purple.xml
light_amber.xml
light_blue.xml
light_purple.xml
dark_pink.xml
light_cyan.xml
dark_blue.xml
dark_teal.xml
dark_lightgreen.xml
light_lightgreen.xml
light_pink.xml
dark_amber.xml
dark_cyan.xml
light_red.xml
dark_yellow.xml
dark_red.xml

Custom colors

Color Tool is the best way to generate new themes, just choose colors and export as Android XML, the theme file must look like:

<!--?xml version="1.0" encoding="UTF-8"?-->
<resources>
  <color name="primaryColor">#00e5ff</color>
  <color name="primaryLightColor">#6effff</color>
  <color name="primaryDarkColor">#00b2cc</color>
  <color name="secondaryColor">#f5f5f5</color>
  <color name="secondaryLightColor">#ffffff</color>
  <color name="secondaryDarkColor">#e6e6e6</color>
  <color name="primaryTextColor">#000000</color>
  <color name="secondaryTextColor">#000000</color>
</resources>

Save it as my_theme.xml or similar and apply the style sheet from Python.

apply_stylesheet(app, theme='dark_teal.xml')

Light themes

Light will need to add light_secondary argument as True.

apply_stylesheet(app, theme='dark_teal.xml', light_secondary=True)

About

Material inspired stylesheet for PySide2 and PyQt5

License:BSD 2-Clause "Simplified" License


Languages

Language:Python 100.0%