用Tkinter打造GUI開發工具(24)Tree樹控件

用Tkinter打造GUI開發工具(24)Tree樹控件


採用Python自帶Tkinter庫開發GUI軟件,學習負擔爲零,因此受到很多朋友喜愛。但是原始的Tkinter庫控件比較簡單,但是它爲我們提供可以擴展新控件的空間。
前面課程,我爲大家介紹瞭如何實現ttk.Notebook,使控制卡Tab放到下面。見下圖。
在這裏插入圖片描述
用Tkinter打造GUI開發工具(19)ttk.Notebook筆記本小部件
https://blog.csdn.net/hepu8/article/details/90345072

在本節我爲大家介紹新控件,Tree樹控件。
原始的樹控件是這樣的
在這裏插入圖片描述
使用比較複雜,我們設計了一個新樹控件Tree,使用也比較簡單。
我們設計了HP_tk.py模塊,導入這個模塊就能使用。

import tkinter as tk
from tkinter import ttk
import HP_tk as htk

root=htk.MainWindow(title='tkinter主窗口',x=0,y=0,w=600, h=600,picture='',zoom=True,center=True)

students = {"窗口":{"windows":['窗口容器。','','',''],\
                  "Toplevel":['用來創建子窗口窗口組件。','','',''],\
                  "PanedWindow":['空間管理組件。','','','']}, \
            "容器":{"Frame":['框架組件。','','',''],\
                  "LabelFrame":['標籤框架。','','',''],\
                  "Notebook":['筆記本組件。','','','']}, \
            "組件":{"Label":['標籤。','','',''],\
                  "Button":['按鈕。','','',''],\
                  "Entry":['單行文本框。','','',''],\
                  "Checkbutton":['複選框。','','',''],\
                  "Radiobutton":['單選框。','','',''],\
                  "Listbox":['列表框。','','',''],\
                  "Canvas":['畫板組件','','',''],\
                  "Scale":['滑塊組件。','','',''],\
                  "Scrollbar":['滾動條。','','',''],\
                  "Text":['多行文本框。','','','']}, \
            "菜單":{"Menu":['菜單。','','',''],\
                  "Menubutton":['按鈕菜單。','','','']}, \
            "ttk組件":{"LabelFrame":['標籤框架。','','',''],\
                     "Notebook":['筆記本組件。','','',''],\
                     "Treeview":['Treeview','','','']},\
            "對話窗":{"messagebox":['messagebox','','',''],\
                          "askokcance":['askokcance','','',''],\
                          "showinfo":['','','',''],\
                          "showwarning":['','','',''],\
                          "showerror":['','','',''], \
                          "askquestion":['','','',''], \
                          "askyesno":['','','',''], \
                          "askyesnocancel":['','','','']}, \
            "文件對話窗":{"filedialog":['','','',''],\
                     "askdirectory":['','','',''],\
                     "askopenfile":['','','',''],\
                     "askopenfiles":['','','',''], \
                     "askopenfilename":['','','',''], \
                     "askopenfilenames":['','','',''], \
                     "asksaveasfile":['','','',''], \
                     "asksaveasfilename":['','','','']}, \
            "簡單對話窗":{"simpledialog":['','','',''],\
                     "askinteger":['','','',''],\
                     "askfloat":['','','',''], \
                     "askstring(title":['','','',''], \
                     "showwarning":['','','','']}}

tree=htk.Tree(root)
tree.load_dict(students )
tree.pack(expand = 1, fill = tk.BOTH)

root.mainloop()   #開啓tk主循環

程序運行結果如下:
在這裏插入圖片描述
Tkinter.tix的文件目錄列表是這樣的。
在這裏插入圖片描述
也不好看,我們也可以使用Tree樹控件。

import tkinter as tk
from tkinter import ttk
import HP_tk as htk

root=htk.MainWindow(title='tkinter主窗口',x=0,y=0,w=600, h=600,picture='',zoom=True,center=True)

path='/xb3/guide'
tree=htk.Tree(root)
tree.load_path(path)
tree.pack(expand = 1, fill = tk.BOTH)

root.mainloop()   #開啓tk主循環

程序運行結果如下:
在這裏插入圖片描述
HP_tk.py是小白量化提供的模塊之一。完整代碼見《零基礎搭建量化投資系統――以Python爲工具》一書提供的完整示例。
該書在京東、淘寶、噹噹網上銷售,歡迎大家訂購正版書。

#購買<零基礎搭建量化投資系統>正版書,送小白量化軟件源代碼。
#獨狼荷蒲qq:2775205
#通通小白python量化羣:524949939
#電話微信:18578755056
#微信公衆號:獨狼股票分析

其他QQ羣:
PythonTkinterGUI : 517029284
Python學習交流: 647866213

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章