網(wǎng)站首頁 編程語言 正文
Python?GUI編程之tkinter?關(guān)于?ttkbootstrap?的使用詳解_python
作者:輕松學(xué)Python ? 更新時(shí)間: 2022-05-04 編程語言1、項(xiàng)目介紹
ttkbootstrap 是一個(gè)基于 tkinter 的界面美化庫,使用這個(gè)工具可以開發(fā)出類似前端 bootstrap 風(fēng)格的 tkinter 桌面程序。如果會 tkinter 學(xué)習(xí)起來就會非常簡單,如果不會的話只要先花兩三天的時(shí)間系統(tǒng)學(xué)習(xí)一下 tkinter 之后再來使用 bootstrap 也是一樣。
ttkbootstrap 不僅有豐富的案例,同時(shí)還有完善的官方文檔,可惜是英文的。不過對于程序員來說,只要用好翻譯軟件與提供的案例代碼,一樣可以輕松上手,那么接下來我們就介紹一下這個(gè)工具的使用。
視頻講解:ttkbootstrap
2、快速上手
首先肯定是需要安裝一下 ttkbootstrap
pip install ttkbootstrap
然后就可以創(chuàng)建窗口對象了,先看一下官方給的案例。
上面案例分別使用了 tkinter 與 ttkbootstrap 創(chuàng)建窗口對象,實(shí)際上運(yùn)行出來的界面沒有太多區(qū)別。原因是因?yàn)檫@個(gè)案例非常簡單,實(shí)際上 ttk.Window 可以設(shè)置非常多的高級屬性,相關(guān)內(nèi)容在后續(xù)可能會出一個(gè)關(guān)于 ttkbootstrap 源碼解讀的視頻,到時(shí)候再詳細(xì)介紹。如果你不清楚該怎么選擇,推薦使用 ttk.Window 的方式進(jìn)行創(chuàng)建。
第二個(gè)需要注意的地方是第 10 行使用 ttkbootstrap 的組件,與默認(rèn)的組件相比多出了一些屬性,其中 bootstyle 是指定按鈕的樣式。按鈕樣式有好幾種,其中 SUCCESS 是從 ttkbootstrap.constants 的常量當(dāng)中出來的,除此之外分別還有其他的樣式,因?yàn)閷?dǎo)出來了所以都可以直接使用。
在按鈕 b2 中設(shè)置 bootstyle 時(shí)指定的是一個(gè)元組并且添加了 OUTLINE 屬性。這個(gè)屬性是指定邊框線關(guān)于它的作用我們可以看一個(gè)官方案例。
邊框小案例
邊框小案例結(jié)果
第二個(gè)按鈕就是顯示邊框線的效果
3、官方文檔介紹
樣式指導(dǎo)(Style guide)
官方地址:https://ttkbootstrap.readthedocs.io/en/latest/styleguide/
關(guān)于 ttkbootstrap 的組件有非常多,樣式也是一樣。如果想創(chuàng)建出漂亮的程序界面,最好是把這些組件的文檔熟讀一遍。或者當(dāng)不會添加樣式使,可以知道到這里進(jìn)行查詢
接口文檔(API Documentation)
接口文檔中記錄了 ttkbootstrap 封裝的每個(gè)組件的參數(shù),并且添加了參數(shù)說明。ttkbootstrap 雖然封裝了很多好看的組件,但是對于新手根本就不清楚怎么進(jìn)行使用。這時(shí)候就可以查看接口文檔,找一下對應(yīng)的組件是怎么封裝的,參數(shù)的作用是什么,應(yīng)該是用那個(gè)屬性才能達(dá)到想要的效果。
接口文檔中有豐富的組件與功能,例如時(shí)間日期選擇、消息提示框、對話框、emoji圖像等等,如果是對程序的美觀性有要求,非常推薦去看一看。如果只是想要基本的功能,就沒必要浪費(fèi)這個(gè)時(shí)間與精力了。
主題(Themes)
主要展示了 ttkbootstrap 的一些內(nèi)置主題,并且允許自定義主題。推薦選擇一個(gè)比較滿意的主題直接使用就可以了,沒必要使用 TTK Creator 創(chuàng)建一個(gè)屬于自己的主題。你不嫌麻煩的話可以自己嘗試一下。
畫廊(Gallery)
項(xiàng)目提供的基礎(chǔ)案例全部存放在這個(gè)里面,整個(gè)項(xiàng)目提供了 11 個(gè)案例,可以說是非常豐富了。如果你不清楚才能熟練掌握 ttkbootstrap 并且用它做出好看的界面,推薦先從這些案例開始。先把案例搞懂,然后再自己嘗試去做新的案例,上手就會非常的快。
但是新手需要注意,這里面的案例不適合新手食用,因?yàn)槎际腔诿嫦驅(qū)ο筮M(jìn)行封裝的,如果看不懂建議先把面向?qū)ο蟮幕A(chǔ)補(bǔ)一下。
原文鏈接:https://www.cnblogs.com/hahaa/archive/2022/03/02/15940518.html
相關(guān)推薦
- 2022-09-06 python使用seaborn繪圖直方圖displot,密度圖,散點(diǎn)圖_python
- 2023-03-29 Python利用pynimate實(shí)現(xiàn)制作動態(tài)排序圖_python
- 2023-07-10 Bean的生命周期和作用域
- 2021-12-15 Redis可視化工具Redis?Desktop?Manager的具體使用_Redis
- 2023-02-17 Python排序算法之堆排序算法_python
- 2024-07-22 Linux 中運(yùn)行的top命令 怎么退出?
- 2022-07-04 Python繪制多因子柱狀圖的實(shí)現(xiàn)示例_python
- 2022-06-19 Rainbond云原生部署SpringCloud應(yīng)用架構(gòu)實(shí)踐_云其它
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支