style_sheet#

Module Contents#

StyleSheetManager

样式表管理器

QssTemplate

样式表模板

StyleSheetBase

样式表基类

FluentStyleSheet

流畅设计样式表

StyleSheetFile

Style sheet file

CustomStyleSheet

Custom style sheet

CustomStyleSheetWatcher

Custom style sheet watcher

DirtyStyleSheetWatcher

Dirty style sheet watcher

StyleSheetCompose

Style sheet compose

ThemeColor

主题颜色

applyThemeColor(qss)

将主题色应用到样式表模板上

getStyleSheetFromFile(file)

get style sheet from qss file

getStyleSheet(source[, theme])

get style sheet

setStyleSheet(widget, source[, theme, register])

设置小部件的样式表

setCustomStyleSheet(widget, lightQss, darkQss)

set custom style sheet

addStyleSheet(widget, source[, theme, register])

add style sheet to widget

updateStyleSheet([lazy])

更新所有注册到管理器中的部件的样式表

setTheme(theme[, save, lazy])

设置应用的主题

toggleTheme([save, lazy])

toggle the theme of application

themeColor()

返回主题色

setThemeColor(color[, save, lazy])

设置应用的主题色

class StyleSheetManager#

Bases: PyQt5.QtCore.QObject

样式表管理器

register(source, widget: PyQt5.QtWidgets.QWidget, reset=True)#

将小部件注册到样式表管理器

参数#

source: str | StyleSheetBase

qss source, it could be: * str: qss file path * StyleSheetBase: style sheet instance

widget: QWidget

将被设置样式表的小部件

reset: bool

whether to reset the qss source

deregister(widget: PyQt5.QtWidgets.QWidget)#

从管理器中注销小部件

items()#
source(widget: PyQt5.QtWidgets.QWidget)#

get the qss source of widget

styleSheetManager#
class QssTemplate(template)#

Bases: string.Template

样式表模板

delimiter = '--'#
applyThemeColor(qss: str)#

将主题色应用到样式表模板上

参数#

qss: str

将被应用主题色的样式表模板字符串,被替换的变量值应该是 ThemeColor 枚举成员的值并以 开头,比如 –ThemeColorPrimary

class StyleSheetBase#

样式表基类

abstract path(theme=Theme.AUTO)#

返回样式表的路径

content(theme=Theme.AUTO)#

返回样式表字符串

apply(widget: PyQt5.QtWidgets.QWidget, theme=Theme.AUTO)#

将样式表应用在小部件上

class FluentStyleSheet#

Bases: StyleSheetBase, enum.Enum

流畅设计样式表

MENU = 'menu'#
LABEL = 'label'#
PIVOT = 'pivot'#
BUTTON = 'button'#
DIALOG = 'dialog'#
SLIDER = 'slider'#
INFO_BAR = 'info_bar'#
SPIN_BOX = 'spin_box'#
TAB_VIEW = 'tab_view'#
TOOL_TIP = 'tool_tip'#
CHECK_BOX = 'check_box'#
COMBO_BOX = 'combo_box'#
FLIP_VIEW = 'flip_view'#
LINE_EDIT = 'line_edit'#
LIST_VIEW = 'list_view'#
TREE_VIEW = 'tree_view'#
INFO_BADGE = 'info_badge'#
PIPS_PAGER = 'pips_pager'#
TABLE_VIEW = 'table_view'#
CARD_WIDGET = 'card_widget'#
TIME_PICKER = 'time_picker'#
COLOR_DIALOG = 'color_dialog'#
MEDIA_PLAYER = 'media_player'#
SETTING_CARD = 'setting_card'#
TEACHING_TIP = 'teaching_tip'#
FLUENT_WINDOW = 'fluent_window'#
SWITCH_BUTTON = 'switch_button'#
MESSAGE_DIALOG = 'message_dialog'#
STATE_TOOL_TIP = 'state_tool_tip'#
CALENDAR_PICKER = 'calendar_picker'#
FOLDER_LIST_DIALOG = 'folder_list_dialog'#
SETTING_CARD_GROUP = 'setting_card_group'#
EXPAND_SETTING_CARD = 'expand_setting_card'#
NAVIGATION_INTERFACE = 'navigation_interface'#
path(theme=Theme.AUTO)#

返回样式表的路径

class StyleSheetFile(path: str)#

Bases: StyleSheetBase

Style sheet file

path(theme=Theme.AUTO)#

返回样式表的路径

class CustomStyleSheet(widget: PyQt5.QtWidgets.QWidget)#

Bases: StyleSheetBase

Custom style sheet

DARK_QSS_KEY = 'darkCustomQss'#
LIGHT_QSS_KEY = 'lightCustomQss'#
path(theme=Theme.AUTO)#

返回样式表的路径

__eq__(other: object) bool#

Return self==value.

setCustomStyleSheet(lightQss: str, darkQss: str)#

set custom style sheet in light and dark theme mode

setLightStyleSheet(qss: str)#

set the style sheet in light mode

setDarkStyleSheet(qss: str)#

set the style sheet in dark mode

lightStyleSheet() str#
darkStyleSheet() str#
content(theme=Theme.AUTO) str#

返回样式表字符串

class CustomStyleSheetWatcher#

Bases: PyQt5.QtCore.QObject

Custom style sheet watcher

eventFilter(obj: PyQt5.QtWidgets.QWidget, e: PyQt5.QtCore.QEvent)#
class DirtyStyleSheetWatcher#

Bases: PyQt5.QtCore.QObject

Dirty style sheet watcher

eventFilter(obj: PyQt5.QtWidgets.QWidget, e: PyQt5.QtCore.QEvent)#
class StyleSheetCompose(sources: List[StyleSheetBase])#

Bases: StyleSheetBase

Style sheet compose

content(theme=Theme.AUTO)#

返回样式表字符串

add(source: StyleSheetBase)#

add style sheet source

remove(source: StyleSheetBase)#

remove style sheet source

getStyleSheetFromFile(file: str | PyQt5.QtCore.QFile)#

get style sheet from qss file

getStyleSheet(source: str | StyleSheetBase, theme=Theme.AUTO)#

get style sheet

参数#

source: str | StyleSheetBase
qss source, it could be:
  • str: qss file path

  • StyleSheetBase: style sheet instance

theme: Theme

样式表的主题

setStyleSheet(widget: PyQt5.QtWidgets.QWidget, source: str | StyleSheetBase, theme=Theme.AUTO, register=True)#

设置小部件的样式表

参数#

widget: QWidget

将被设置样式表的小部件

source: str | StyleSheetBase
qss source, it could be:
  • str: qss file path

  • StyleSheetBase: style sheet instance

theme: Theme

样式表的主题

register: bool

是否将小部件注册到样式表管理器中,如果 registerTrue,当主题改变时小部件的样式表也会随之改变

setCustomStyleSheet(widget: PyQt5.QtWidgets.QWidget, lightQss: str, darkQss: str)#

set custom style sheet

参数#

widget: QWidget

the widget to add style sheet

lightQss: str

style sheet used in light theme mode

darkQss: str

style sheet used in light theme mode

addStyleSheet(widget: PyQt5.QtWidgets.QWidget, source: str | StyleSheetBase, theme=Theme.AUTO, register=True)#

add style sheet to widget

参数#

widget: QWidget

将被设置样式表的小部件

source: str | StyleSheetBase
qss source, it could be:
  • str: qss file path

  • StyleSheetBase: style sheet instance

theme: Theme

样式表的主题

register: bool

是否将小部件注册到样式表管理器中,如果 registerTrue,当主题改变时小部件的样式表也会随之改变

updateStyleSheet(lazy=False)#

更新所有注册到管理器中的部件的样式表

参数#

lazy: bool

whether to update the style sheet lazily, set to True will accelerate theme switching

setTheme(theme: qfluentwidgets.common.config.Theme, save=False, lazy=False)#

设置应用的主题

参数#

theme: Theme

主题模式

save: bool

是否将改变保存到样式表中

lazy: bool

whether to update the style sheet lazily, set to True will accelerate theme switching

toggleTheme(save=False, lazy=False)#

toggle the theme of application

参数#

save: bool

是否将改变保存到样式表中

lazy: bool

whether to update the style sheet lazily, set to True will accelerate theme switching

class ThemeColor#

Bases: enum.Enum

主题颜色

PRIMARY = 'ThemeColorPrimary'#
DARK_1 = 'ThemeColorDark1'#
DARK_2 = 'ThemeColorDark2'#
DARK_3 = 'ThemeColorDark3'#
LIGHT_1 = 'ThemeColorLight1'#
LIGHT_2 = 'ThemeColorLight2'#
LIGHT_3 = 'ThemeColorLight3'#
name()#

枚举类成员的名字

color()#
themeColor()#

返回主题色

setThemeColor(color, save=False, lazy=False)#

设置应用的主题色

参数#

color: QColor | Qt.GlobalColor | str

主题色

save: bool

是否将改变保存到样式表中

lazy: bool

whether to update the style sheet lazily