PySimpleGui theme主题使用

第一章 PySimpleGui theme主题使用


前言

通过设置主题,可快速设置GUI的颜色,节省自己设置UI的时间

一、theme是什么?

PySimpleGui 主题颜色设置

二、使用步骤

1.打印所有主题:

theme_list() 当前可用的主题列表

代码如下:

import PySimpleGUI as sg

theme = sg.theme_list()

for item in theme:
    print(item)

打印输出:

D:\python38\python.exe D:/python/2022/pysimplegui/demo.py
Black
BlueMono
BluePurple
BrightColors
BrownBlue
Dark
Dark2
DarkAmber
DarkBlack
DarkBlack1
DarkBlue
DarkBlue1
DarkBlue10
DarkBlue11
DarkBlue12
DarkBlue13
DarkBlue14
DarkBlue15
DarkBlue16
DarkBlue17
DarkBlue2
DarkBlue3
DarkBlue4
DarkBlue5
DarkBlue6
DarkBlue7
DarkBlue8
DarkBlue9
DarkBrown
DarkBrown1
DarkBrown2
DarkBrown3
DarkBrown4
DarkBrown5
DarkBrown6
DarkBrown7
DarkGreen
DarkGreen1
DarkGreen2
DarkGreen3
DarkGreen4
DarkGreen5
DarkGreen6
DarkGreen7
DarkGrey
DarkGrey1
DarkGrey10
DarkGrey11
DarkGrey12
DarkGrey13
DarkGrey14
DarkGrey2
DarkGrey3
DarkGrey4
DarkGrey5
DarkGrey6
DarkGrey7
DarkGrey8
DarkGrey9
DarkPurple
DarkPurple1
DarkPurple2
DarkPurple3
DarkPurple4
DarkPurple5
DarkPurple6
DarkPurple7
DarkRed
DarkRed1
DarkRed2
DarkTanBlue
DarkTeal
DarkTeal1
DarkTeal10
DarkTeal11
DarkTeal12
DarkTeal2
DarkTeal3
DarkTeal4
DarkTeal5
DarkTeal6
DarkTeal7
DarkTeal8
DarkTeal9
Default
Default1
DefaultNoMoreNagging
Green
GreenMono
GreenTan
HotDogStand
Kayak
LightBlue
LightBlue1
LightBlue2
LightBlue3
LightBlue4
LightBlue5
LightBlue6
LightBlue7
LightBrown
LightBrown1
LightBrown10
LightBrown11
LightBrown12
LightBrown13
LightBrown2
LightBrown3
LightBrown4
LightBrown5
LightBrown6
LightBrown7
LightBrown8
LightBrown9
LightGray1
LightGreen
LightGreen1
LightGreen10
LightGreen2
LightGreen3
LightGreen4
LightGreen5
LightGreen6
LightGreen7
LightGreen8
LightGreen9
LightGrey
LightGrey1
LightGrey2
LightGrey3
LightGrey4
LightGrey5
LightGrey6
LightPurple
LightTeal
LightYellow
Material1
Material2
Myself0001
NeutralBlue
Purple
Python
Reddit
Reds
SandyBeach
SystemDefault
SystemDefault1
SystemDefaultForReal
Tan
TanBlue
TealMono
Topanga

进程已结束,退出代码0

2.主题设置

sg.theme('LightGrey1') 

LightGrey1 可用其他主题代替

截图如下:

代码如下(示例):

# encoding:utf-8
import PySimpleGUI as sg

while True:  
    sg.theme('LightGrey1')   # 主题设置
    
    layout = [
        [sg.Text('PySimpleGUI Theme', font=('宋体', 24), size=(50, 1), justification='center')],
        [sg.Text('IP:', font=('宋体', 18)), sg.Input(size=(18, 1), font=('宋体', 18), key='-IP-'),
         sg.Button('开始', font=('宋体', 18), pad=((10, 0), 0)),
         sg.Button('停止', font=('宋体', 18), pad=(50, 0)),
         sg.Button('清空', font=('宋体', 18), tooltip='Clear-display')],
        [sg.Multiline(default_text='', size=(65, 20), font=('宋体', 18), key='-OUTPUT-', reroute_cprint=True,
                      autoscroll=True)]
    ]

    window = sg.Window('PySimpleGUI主题', layout)
    event, values = window.read()
    if event in (None, '-WINDOW CLOSE ATTEMPTED-', 'Exit'):
        break

window.close()

3.更新主题的设置

设置主题后,可以单独更新如文本的颜色,背景色,按钮背景色,按钮字体颜色等

如设置主题后,可使用theme_button_color(('red', 'white'))更新按钮的背景色和颜色

# red为按钮字体颜色, white为按钮背景颜色

截图如下:

代码如下:

# encoding:utf-8
import PySimpleGUI as sg

while True:
    sg.theme('LightGrey1')   # 主题设置
    sg.theme_button_color(('red', 'white'))

    layout = [
        [sg.Text('PySimpleGUI Theme', font=('宋体', 24), size=(50, 1), justification='center')],
        [sg.Text('IP:', font=('宋体', 18)), sg.Input(size=(18, 1), font=('宋体', 18), key='-IP-'),
         sg.Button('开始', font=('宋体', 18), pad=((10, 0), 0)),
         sg.Button('停止', font=('宋体', 18), pad=(50, 0)),
         sg.Button('清空', font=('宋体', 18), tooltip='Clear-display')],
        [sg.Multiline(default_text='', size=(65, 5), font=('宋体', 18), key='-OUTPUT-', reroute_cprint=True,
                      autoscroll=True)]
    ]

    window = sg.Window('PySimpleGUI主题', layout)
    event, values = window.read()
    if event in (None, '-WINDOW CLOSE ATTEMPTED-', 'Exit'):
        break

window.close()

其他主题更新方法:

sg.theme_background_color(color='white')  # 设置Windows 和容器(列、框架、选项卡)和表格的背景颜色
sg.theme_element_background_color(color='white')  # 除容器之外的所有元素的背景颜色
sg.theme_text_element_background_color(color='white')  # 设置文本元素的背景色
sg.theme_text_color(color='red')   # 设置Text颜色
sg.theme_input_background_color(color='gray')  # 设置input元素的背景色
sg.theme_input_text_color(color='green')   # 设置input元素不是文本而显示文本的颜色
sg.theme_button_color(('red', 'white'))   # red为按钮字体颜色, white为按钮背景颜色

总结

1.使用sg.theme_list()可查询所有的主题

2.使用sg.theme('LightGrey1') 设置主题

3.设置主题后,可以更新设置

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

z60015260

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值