用Tkinter打造GUI开发工具(24)Tree树控件

用Tkinter打造GUI开发工具(24)Tree树控件


采用Python自带Tkinter库开发GUI软件,学习负担为零,因此受到很多朋友喜爱。但是原始的Tkinter库控件比较简单,但是它为我们提供可以扩展新控件的空间。
前面课程,我为大家介绍了如何实现ttk.Notebook,使控制卡Tab放到下面。见下图。
用Tkinter打造GUI开发工具(24)Tree树控件_第1张图片
用Tkinter打造GUI开发工具(19)ttk.Notebook笔记本小部件
https://blog.csdn.net/hepu8/article/details/90345072

在本节我为大家介绍新控件,Tree树控件。
原始的树控件是这样的
用Tkinter打造GUI开发工具(24)Tree树控件_第2张图片
使用比较复杂,我们设计了一个新树控件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打造GUI开发工具(24)Tree树控件_第3张图片
Tkinter.tix的文件目录列表是这样的。
用Tkinter打造GUI开发工具(24)Tree树控件_第4张图片
也不好看,我们也可以使用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主循环

程序运行结果如下:
用Tkinter打造GUI开发工具(24)Tree树控件_第5张图片
HP_tk.py是小白量化提供的模块之一。完整代码见《零基础搭建量化投资系统――以Python为工具》一书提供的完整示例。
该书在京东、淘宝、当当网上销售,欢迎大家订购正版书。

#购买<零基础搭建量化投资系统>正版书,送小白量化软件源代码。
#独狼荷蒲qq:2775205
#通通小白python量化群:524949939
#电话微信:18578755056
#微信公众号:独狼股票分析

其他QQ群:
PythonTkinterGUI : 517029284
Python学习交流: 647866213

你可能感兴趣的:(量化软件,软件开发,python)