谁说程序猿不懂美,一招教你如何变美

Tkinter美化皮肤ttkbootstrap介绍

1. ttkbootstrap介绍

  • tkinter 是一个简单入手,但是功能十分强大的GUI编程库,学习入门很快,如果你还不会,点击阅读Tkinter详细教程:
    1. 强大的的GUI开发库 - Tkinter详细教程一
    2. 强大的的GUI开发库 - Tkinter详细教程二
    3. 强大的的GUI开发库 - Tkinter详细教程三
  • Tkinter开发十分简单,但是开发出来的GUI界面不够美观,各个组件的外观都很老土,所谓 " 爱美之心,人人有之 ",因此需要给Tkinter加上美化的皮肤。
  • ttkbootstrap 是一个基于 tkinter 的界面美化库,使用这个工具可以开发出类似前端 bootstrap 风格的 tkinter 桌面程序,美化功能十分强大,强力推荐了解学习一下。
  • ttkbootstrap官方网址:

https://ttkbootstrap.readthedocs.io/en/latest/styleguide/notebook/

  • 如下是基于ttkbootstrap库开发出的超级美观的GUI主题界面介绍:
    在这里插入图片描述

2. ttkbootstrap使用教程简介

  • ttkbootstrap官方提供了丰富的介绍说明,包括安装指南控件样式指南API接口说明主题示例demon等,只需要通过官网相关说明,就可以轻松掌握其使用方法。
    在这里插入图片描述

2.1 安装

  • 通过pip安装 : pip install ttkbootstrap

2.2 控件样式指南

  • 控件样式指南介绍了各个控件的样式以及参数设置。
  • ttkbootstrapTkinter的控件增加了一个属性 :bootstyle来设置控件的样式。
  • 样式关键字以及描述如下:
    在这里插入图片描述
  • 实际开发中,为了选择自己喜欢的样式,可以在官网查看各个样式的效果,选择喜欢的样式。
    在这里插入图片描述

2.3 API接口

  • API接口说明中详细说明了ttkbootstrap 如何对tkinter进行封装的,对于使用者来说,没必要深入研究其关系,当然对爱研究的人来说,深入研究也是对编程能力的大大提升。
    在这里插入图片描述

2.4 主题

  • ttkbootstrap提供了内置的主题设置API接口,可以简单快速的修改界面主题。
  • 主题包含了深黑色浅色等常用主题。
  • 标准主题在是在ttkbootstrap.themes.standard 模块中定义。
  • 当然也可以自己新建主题,设置自己喜欢的风格。
  • 以下提供了一个在菜单栏下可以快速集成主题修改的源码片段。
    在这里插入图片描述
"""
Describe  : 主题设计
Autoar    : QWQ
"""

import ttkbootstrap as tkbot
from ttkbootstrap.constants import *

class StyleSet(tkbot.Frame):
    def __init__(self, master=None, style=None):
        super().__init__(master)
        self.master = master
        self.style = style
        self.SetVar = tkbot.IntVar()
        self.createWidget(master, style)
    
    def createWidget(self, master, style) :
        
        theme_names = style.theme_names() # 以列表的形式返回多个主题名
        theme_number = len(theme_names)

        # 主题菜单
        def change_theme():
            theme_cbo_value = self.SetVar.get()
            style.theme_use(theme_names[theme_cbo_value])
            
        StyleSet =  tkbot.Menu(master, tearoff=False)
        master.add_cascade(label="主题设置", menu=StyleSet)
        self.SetVar.set(0)  
        for index in range(theme_number) :
            StyleSet.add_radiobutton(label=theme_names[index], variable=self.SetVar, value=index,
                                    command=change_theme)

if __name__ == "__main__" :
    # (1)主窗口设置
    root = tkbot.Window()
    root.title("QwQ的小工具") 
    root.geometry("%dx%d"%(600, 400))
    
    # (2)操作菜单设置  
    main_menu = tkbot.Menu(root)
    root.config(menu=main_menu)
    
    # (4)主题设置
    style = tkbot.Style()
    StyleSet(main_menu, style)

    root.mainloop()

2.5 demon

  • 示例中介绍了几个Demon示例以及源码,比如:计算器,播放器,文本阅读器,等,根据示例源码,可以快速掌握该模块的使用方法。
    在这里插入图片描述

3. 基于ttkbootstrap开发的一个小工具界面展示

  • 如下界面,就是本人基于ttkbootstrap做出的一个小工具界面,的确美观nice !
    在这里插入图片描述

感谢阅读 若有错误 欢迎指正 !!!


  • 18
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

园长QwQ

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

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

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

打赏作者

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

抵扣说明:

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

余额充值