網站首頁 編程語言 正文
1、項目介紹
ttkbootstrap 是一個基于 tkinter 的界面美化庫,使用這個工具可以開發出類似前端 bootstrap 風格的 tkinter 桌面程序。如果會 tkinter 學習起來就會非常簡單,如果不會的話只要先花兩三天的時間系統學習一下 tkinter 之后再來使用 bootstrap 也是一樣。
ttkbootstrap 不僅有豐富的案例,同時還有完善的官方文檔,可惜是英文的。不過對于程序員來說,只要用好翻譯軟件與提供的案例代碼,一樣可以輕松上手,那么接下來我們就介紹一下這個工具的使用。
視頻講解:ttkbootstrap
2、快速上手
首先肯定是需要安裝一下 ttkbootstrap
pip install ttkbootstrap
然后就可以創建窗口對象了,先看一下官方給的案例。
上面案例分別使用了 tkinter 與 ttkbootstrap 創建窗口對象,實際上運行出來的界面沒有太多區別。原因是因為這個案例非常簡單,實際上 ttk.Window 可以設置非常多的高級屬性,相關內容在后續可能會出一個關于 ttkbootstrap 源碼解讀的視頻,到時候再詳細介紹。如果你不清楚該怎么選擇,推薦使用 ttk.Window 的方式進行創建。
第二個需要注意的地方是第 10 行使用 ttkbootstrap 的組件,與默認的組件相比多出了一些屬性,其中 bootstyle 是指定按鈕的樣式。按鈕樣式有好幾種,其中 SUCCESS 是從 ttkbootstrap.constants 的常量當中出來的,除此之外分別還有其他的樣式,因為導出來了所以都可以直接使用。
在按鈕 b2 中設置 bootstyle 時指定的是一個元組并且添加了 OUTLINE 屬性。這個屬性是指定邊框線關于它的作用我們可以看一個官方案例。
邊框小案例
邊框小案例結果
第二個按鈕就是顯示邊框線的效果
3、官方文檔介紹
樣式指導(Style guide)
官方地址:https://ttkbootstrap.readthedocs.io/en/latest/styleguide/
關于 ttkbootstrap 的組件有非常多,樣式也是一樣。如果想創建出漂亮的程序界面,最好是把這些組件的文檔熟讀一遍。或者當不會添加樣式使,可以知道到這里進行查詢
接口文檔(API Documentation)
接口文檔中記錄了 ttkbootstrap 封裝的每個組件的參數,并且添加了參數說明。ttkbootstrap 雖然封裝了很多好看的組件,但是對于新手根本就不清楚怎么進行使用。這時候就可以查看接口文檔,找一下對應的組件是怎么封裝的,參數的作用是什么,應該是用那個屬性才能達到想要的效果。
接口文檔中有豐富的組件與功能,例如時間日期選擇、消息提示框、對話框、emoji圖像等等,如果是對程序的美觀性有要求,非常推薦去看一看。如果只是想要基本的功能,就沒必要浪費這個時間與精力了。
主題(Themes)
主要展示了 ttkbootstrap 的一些內置主題,并且允許自定義主題。推薦選擇一個比較滿意的主題直接使用就可以了,沒必要使用 TTK Creator 創建一個屬于自己的主題。你不嫌麻煩的話可以自己嘗試一下。
畫廊(Gallery)
項目提供的基礎案例全部存放在這個里面,整個項目提供了 11 個案例,可以說是非常豐富了。如果你不清楚才能熟練掌握 ttkbootstrap 并且用它做出好看的界面,推薦先從這些案例開始。先把案例搞懂,然后再自己嘗試去做新的案例,上手就會非常的快。
但是新手需要注意,這里面的案例不適合新手食用,因為都是基于面向對象進行封裝的,如果看不懂建議先把面向對象的基礎補一下。
原文鏈接:https://www.cnblogs.com/hahaa/archive/2022/03/02/15940518.html
相關推薦
- 2022-04-23 C#多線程系列之async和await用法詳解_C#教程
- 2022-06-29 利用python實現你說我猜游戲的完整實例_python
- 2022-09-05 Spark/Hive 行列轉換
- 2022-08-01 Qt實現矩形大小任意縮放的示例代碼_C 語言
- 2022-06-28 C#基于自定義事件EventArgs實現發布訂閱模式_C#教程
- 2022-05-09 Python使用Plotly繪制常見5種動態交互式圖表_python
- 2022-06-28 python神經網絡使用tensorflow實現自編碼Autoencoder_python
- 2023-10-31 IP地址、網關、網絡/主機號、子網掩碼關系
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支