Python tkinter 设置主题
生活随笔
收集整理的這篇文章主要介紹了
Python tkinter 设置主题
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
開(kāi)頭說(shuō)明:設(shè)置的主題只對(duì)使用tkinter.ttk創(chuàng)建的控件有效
安裝庫(kù)
sudo apt install python3-tk python3-pip # 安裝 tkinter 和 pip(對(duì)于 debian 發(fā)行版及其分支) pip3 install ttkthemes # 重點(diǎn)在此獲取主題
import ttkthemes # 用于設(shè)置主題 print(ttkthemes.THEMES) # 獲取主題列表并打印 gfdgd_xi@gfdgd-xi-PC:~/Documents/vscode$ /usr/bin/python3 /home/gfdgd_xi/Documents/Python/example/CSDN/ttkthemes/GetThemes.py ['adapta', 'aquativo', 'arc', 'black', 'blue', 'breeze', 'clearlooks', 'elegance', 'equilux', 'itft1', 'keramik', 'kroc', 'plastik', 'radiance', 'scidblue', 'scidgreen', 'scidgrey', 'scidmint', 'scidpink', 'scidpurple', 'scidsand', 'smog', 'ubuntu', 'winxpblue', 'yaru']模板
import tkinter as tk # 用于創(chuàng)建窗口 import tkinter.ttk as ttk # 用于創(chuàng)建控件 import ttkthemes # 用于設(shè)置主題 window = tk.Tk() # 創(chuàng)建窗口實(shí)例 window.geometry("800x600") # 設(shè)置窗口大小(可略),有控件這個(gè)可以不用 win = ttk.Frame(window) # 因?yàn)?ttkthemes 設(shè)置的主題對(duì) tkinter 創(chuàng)建的窗口沒(méi)有效果,# 并且部分主題要設(shè)置背景# 所以創(chuàng)建一個(gè) ttk.Frame 承載控件 style = ttkthemes.ThemedStyle(window) # 設(shè)置需要設(shè)置主題的窗口 style.set_theme("ubuntu") # 向?qū)?yīng)窗口設(shè)置主題 ''' 創(chuàng)建控件,省略 ''' win.pack() # 顯示用于承載控件的 ttk.Frame window.mainloop() # 常駐窗口
看起來(lái)好像沒(méi)什么變化,但如果創(chuàng)建一些控件呢?
例子
import tkinter as tk # 用于創(chuàng)建窗口 import tkinter.ttk as ttk # 用于創(chuàng)建控件 import tkinter.messagebox as messagebox # 用于創(chuàng)建對(duì)話(huà)框 import ttkthemes # 用于設(shè)置主題# def ButtonClick(): # 創(chuàng)建一個(gè)函數(shù),用途:messagebox.showinfo(title="Hello World!", message="Hello World!") # 顯示一個(gè)對(duì)話(huà)框# window = tk.Tk() # 創(chuàng)建窗口實(shí)例 win = ttk.Frame(window) # 因?yàn)?ttkthemes 設(shè)置的主題對(duì) tkinter 創(chuàng)建的窗口沒(méi)有效果,# 并且部分主題要設(shè)置背景# 所以創(chuàng)建一個(gè) ttk.Frame 承載控件 style = ttkthemes.ThemedStyle(window) # 設(shè)置需要設(shè)置主題的窗口 style.set_theme("ubuntu") # 向?qū)?yīng)窗口設(shè)置主題 label = ttk.Label(win, text="Hello World!") # 創(chuàng)建一個(gè) Label 標(biāo)簽 progress = ttk.Progressbar(win) # 創(chuàng)建一個(gè) progress 進(jìn)度條 button = ttk.Button(win, text="Hello World!", command=ButtonClick) # 創(chuàng)建一個(gè) button 按鈕 progress['value'] = 50 # 設(shè)置進(jìn)度條的值 label.pack() # 顯示 label 標(biāo)簽 progress.pack() # 顯示進(jìn)度條 button.pack() # 顯示按鈕 win.pack() # 顯示用于承載控件的 ttk.Frame window.mainloop() # 常駐窗口效果:
如果不用主題(不用主題的代碼扔在最后)
差別好明顯……
結(jié)尾
這里還有一個(gè)有關(guān)這個(gè)點(diǎn)例子:系統(tǒng)資源查看小工具,也用到了 ttkthemes
import tkinter as tk # 用于創(chuàng)建窗口 import tkinter.ttk as ttk # 用于創(chuàng)建控件 import tkinter.messagebox as messagebox # 用于創(chuàng)建對(duì)話(huà)框 import ttkthemes # 用于設(shè)置主題# def ButtonClick(): # 創(chuàng)建一個(gè)函數(shù),用途:messagebox.showinfo(title="Hello World!", message="Hello World!") # 顯示一個(gè)對(duì)話(huà)框# window = tk.Tk() # 創(chuàng)建窗口實(shí)例 win = ttk.Frame(window) # 因?yàn)?ttkthemes 設(shè)置的主題對(duì) tkinter 創(chuàng)建的窗口沒(méi)有效果,# 并且部分主題要設(shè)置背景# 所以創(chuàng)建一個(gè) ttk.Frame 承載控件 label = ttk.Label(win, text="Hello World!") # 創(chuàng)建一個(gè) Label 標(biāo)簽 progress = ttk.Progressbar(win) # 創(chuàng)建一個(gè) progress 進(jìn)度條 button = ttk.Button(win, text="Hello World!", command=ButtonClick) # 創(chuàng)建一個(gè) button 按鈕 progress['value'] = 50 # 設(shè)置進(jìn)度條的值 label.pack() # 顯示 label 標(biāo)簽 progress.pack() # 顯示進(jìn)度條 button.pack() # 顯示按鈕 win.pack() # 顯示用于承載控件的 ttk.Frame window.mainloop() # 常駐窗口總結(jié)
以上是生活随笔為你收集整理的Python tkinter 设置主题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 真空密码字典生成器分享
- 下一篇: websocket python爬虫_p