Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解


Posted in Python onMarch 03, 2022

Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解

1、项目介绍

ttkbootstrap 是一个基于 tkinter 的界面美化库,使用这个工具可以开发出类似前端 bootstrap 风格的 tkinter 桌面程序。如果会 tkinter 学习起来就会非常简单,如果不会的话只要先花两三天的时间系统学习一下 tkinter 之后再来使用 bootstrap 也是一样。

ttkbootstrap 不仅有丰富的案例,同时还有完善的官方文档,可惜是英文的。不过对于程序员来说,只要用好翻译软件与提供的案例代码,一样可以轻松上手,那么接下来我们就介绍一下这个工具的使用。

视频讲解:ttkbootstrap

2、快速上手

首先肯定是需要安装一下 ttkbootstrap

pip install ttkbootstrap

然后就可以创建窗口对象了,先看一下官方给的案例。

Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解

上面案例分别使用了 tkinter 与 ttkbootstrap 创建窗口对象,实际上运行出来的界面没有太多区别。原因是因为这个案例非常简单,实际上 ttk.Window 可以设置非常多的高级属性,相关内容在后续可能会出一个关于 ttkbootstrap 源码解读的视频,到时候再详细介绍。如果你不清楚该怎么选择,推荐使用 ttk.Window 的方式进行创建。

第二个需要注意的地方是第 10 行使用 ttkbootstrap 的组件,与默认的组件相比多出了一些属性,其中 bootstyle 是指定按钮的样式。按钮样式有好几种,其中 SUCCESS 是从 ttkbootstrap.constants 的常量当中出来的,除此之外分别还有其他的样式,因为导出来了所以都可以直接使用。

Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解

在按钮 b2 中设置 bootstyle 时指定的是一个元组并且添加了 OUTLINE 属性。这个属性是指定边框线关于它的作用我们可以看一个官方案例。

边框小案例

Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解

边框小案例结果

Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解

第二个按钮就是显示边框线的效果

3、官方文档介绍

样式指导(Style guide)

官方地址:https://ttkbootstrap.readthedocs.io/en/latest/styleguide/

关于 ttkbootstrap 的组件有非常多,样式也是一样。如果想创建出漂亮的程序界面,最好是把这些组件的文档熟读一遍。或者当不会添加样式使,可以知道到这里进行查询

接口文档(API Documentation)

接口文档中记录了 ttkbootstrap 封装的每个组件的参数,并且添加了参数说明。ttkbootstrap 虽然封装了很多好看的组件,但是对于新手根本就不清楚怎么进行使用。这时候就可以查看接口文档,找一下对应的组件是怎么封装的,参数的作用是什么,应该是用那个属性才能达到想要的效果。

接口文档中有丰富的组件与功能,例如时间日期选择、消息提示框、对话框、emoji图像等等,如果是对程序的美观性有要求,非常推荐去看一看。如果只是想要基本的功能,就没必要浪费这个时间与精力了。

主题(Themes)

主要展示了 ttkbootstrap 的一些内置主题,并且允许自定义主题。推荐选择一个比较满意的主题直接使用就可以了,没必要使用 TTK Creator 创建一个属于自己的主题。你不嫌麻烦的话可以自己尝试一下。

画廊(Gallery)

项目提供的基础案例全部存放在这个里面,整个项目提供了 11 个案例,可以说是非常丰富了。如果你不清楚才能熟练掌握 ttkbootstrap 并且用它做出好看的界面,推荐先从这些案例开始。先把案例搞懂,然后再自己尝试去做新的案例,上手就会非常的快。

但是新手需要注意,这里面的案例不适合新手食用,因为都是基于面向对象进行封装的,如果看不懂建议先把面向对象的基础补一下。

到此这篇关于Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解的文章就介绍到这了,更多相关python ttkbootstrap使用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
连接Python程序与MySQL的教程
Apr 29 Python
wxPython定时器wx.Timer简单应用实例
Jun 03 Python
解决Python字典写入文件出行首行有空格的问题
Sep 27 Python
tensorflow训练中出现nan问题的解决
Feb 10 Python
利用python计算windows全盘文件md5值的脚本
Jul 27 Python
python协程gevent案例 爬取斗鱼图片过程解析
Aug 27 Python
Python虚拟环境venv用法详解
May 25 Python
使用tensorflow根据输入更改tensor shape
Jun 23 Python
python中return不返回值的问题解析
Jul 22 Python
Django+Uwsgi+Nginx如何实现生产环境部署
Jul 31 Python
Python3利用scapy局域网实现自动多线程arp扫描功能
Jan 21 Python
pyx文件 生成pyd 文件用于 cython调用的实现
Mar 04 Python
python机器学习实现oneR算法(以鸢尾data为例)
Mar 03 #Python
详解python的异常捕获
Mar 03 #Python
分享提高 Python 代码的可读性的技巧
Mar 03 #Python
使用python创建股票的时间序列可视化分析
Python Pandas读取Excel日期数据的异常处理方法
pytorch中的torch.nn.Conv2d()函数图文详解
Feb 28 #Python
python3中apply函数和lambda函数的使用详解
Feb 28 #Python
You might like
php magic_quotes_gpc的一点认识与分析
2008/08/18 PHP
PHP正确解析UTF-8字符串技巧应用
2012/11/07 PHP
ThinkPHP中处理表单中的注意事项
2014/11/22 PHP
Codeigniter购物车类不能添加中文的解决方法
2014/11/29 PHP
老版本PHP转义Json里的特殊字符的函数
2015/06/08 PHP
php函数连续调用实例分析
2015/07/30 PHP
分析php://output和php://stdout的区别
2018/05/06 PHP
php+websocket 实现的聊天室功能详解
2020/05/27 PHP
JavaScript 创建对象和构造类实现代码
2009/07/30 Javascript
js生成随机数之random函数随机示例
2013/12/20 Javascript
jquery让返回的内容显示在特定div里(代码少而精悍)
2014/06/23 Javascript
《JavaScript高级编程》学习笔记之object和array引用类型
2015/11/01 Javascript
React实现点击删除列表中对应项
2017/01/10 Javascript
React-router中结合webpack实现按需加载实例
2017/05/25 Javascript
ES6学习笔记之字符串、数组、对象、函数新增知识点实例分析
2020/01/22 Javascript
vue 单页应用和多页应用的优劣
2020/10/22 Javascript
[59:07]海涛为你详解DOTA2新版本“贤哲秘契”
2014/11/22 DOTA
[03:26]回顾2015国际邀请赛中国区预选赛
2015/06/09 DOTA
[01:18:33]Secret vs VGJ.S Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
[01:16:01]VGJ.S vs Mski Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
Python中的变量和作用域详解
2016/07/13 Python
python与C互相调用的方法详解
2017/07/14 Python
利用Python实现原创工具的Logo与Help
2018/12/03 Python
在linux系统下安装python librtmp包的实现方法
2019/07/22 Python
Python IDE环境之 新版Pycharm安装详细教程
2020/03/05 Python
Python如何把Spark数据写入ElasticSearch
2020/04/18 Python
Python模块常用四种安装方式
2020/10/20 Python
Python基于爬虫实现全网搜索并下载音乐
2021/02/14 Python
利用纯CSS3实现文字向右循环闪过效果实例(可用于移动端)
2017/06/15 HTML / CSS
Nordgreen台湾官网:极简北欧设计手表
2019/08/21 全球购物
SQL Server 2000数据库的文件有哪些,分别进行描述。
2015/11/09 面试题
医学生自我鉴定范文
2013/11/08 职场文书
优秀学生干部个人事迹材料
2014/06/02 职场文书
2014年秋季开学典礼致辞
2014/08/02 职场文书
初中毕业典礼演讲稿
2014/09/09 职场文书
导游词之凤凰古城
2019/10/22 职场文书