Python桌面开发tkinter—ttk

介绍

  • ttk可以理解为Tk tookit,是对tkinter的一个加强和改良,在tkinter的目录里可以找到,它是最后一个文件,大小只有50KB
  • ttk对标准组件支持性很好,ttk支持原来21个组件中的11个,并且它引入了6个新组建combobox,notebook,progressbar,separator,sizegrip,treeview

Combobox下拉菜单

方法

  • 创建:cbb = ttk.Combobox(root)
  • 设置条目:cbb['value'] = ("迪丽热巴", "古力娜扎", "马儿扎哈")
  • 设置哪个条目为默认值:com.current(1)

示例

import tkinter as tk
from tkinter import ttk

root = tk.Tk()
root.geometry('500x300')

var = tk.StringVar()
# 下拉菜单
com = ttk.Combobox(root, textvariable=var)
com.pack()
# 设置条目
com['value'] = ("迪丽热巴", "古力娜扎", "马儿扎哈")
# 设置默认值
com.current(2)
# 绑定事件
com.bind("<<ComboboxSelected>>", lambda: print(var.get()))

root.mainloop()

在这里插入图片描述

Treeview组件

树形结构
import tkinter as tk
from tkinter import ttk

root = tk.Tk()
root.geometry("500x300")

tree = ttk.Treeview(root)
tree.pack()

# 添加一级树枝
tree0 = tree.insert("", 0, "中国", text="China", values=("F1"))
tree1 = tree.insert("", 1, "英国", text="UK", values=("F2"))
tree2 = tree.insert("", 2, "美国", text="USA", values=("F3"))

# 添加二级树枝
tree00 = tree.insert(tree_1, 0, "山东", text="中国山东", values=("F1_1"))
tree01 = tree.insert(tree_1, 1, "北京", text="中国北京", values=("F1_2"))
tree02 = tree.insert(tree_1, 2, "江西", text="中国江西", values=("F1_3"))

tree10 = tree.insert(tree_2, 0, "伦敦", text="英国伦敦", values=("F2_1"))
tree11 = tree.insert(tree_2, 1, "牛津", text="英国牛津", values=("F2_2"))
tree12 = tree.insert(tree_2, 2, "泰晤士", text="英国泰晤士", values=("F2_3"))

tree20 = tree.insert(tree_3, 0, "华盛顿州", text="华盛顿州", values=("F3_1"))
tree21 = tree.insert(tree_3, 1, "纽约州", text="纽约州", values=("F3_2"))
tree22 = tree.insert(tree_3, 2, "犹他州", text="犹他州", values=("F3_3"))

# 三级树枝
tree000 = tree.insert(tree_1_1, 0, "青岛", text="山东青岛", values=("F1_1_1"))
tree001 = tree.insert(tree_1_1, 1, "济南", text="山东济南", values=("F1_1_2"))
tree002 = tree.insert(tree_1_1, 2, "烟台", text="山东烟台", values=("F1_1_3"))

root.mainloop()

在这里插入图片描述

表格结构
import tkinter as tk
from tkinter import ttk

root = tk.Tk()
root.geometry("500x300")

tree = ttk.Treeview(root)
tree.pack()
# 定义列
tree['columns'] = ("姓名", '年龄', '身高', '体重')
# 设置列,但此时列并不显示
tree.column('姓名', width=100)
tree.column('年龄', width=100)
tree.column('身高', width=100)
tree.column('体重', width=100)
# 设置表头
tree.heading('姓名', text='姓名-Name')
tree.heading('年龄', text='年龄-Age')
tree.heading('身高', text='身高-Height')
tree.heading('体重', text='体重-Weight')
# 添加数据
tree.insert('', 0, text="line_1", values=("迪丽热巴", "22", "178", "100"))
tree.insert('', 1, text="line_2", values=("古力娜扎", "24", "160", "105"))

root.mainloop()

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Python Tkinter TTKPython编程语言的一个GUI工具包,它提供了一组现代化的控件和主题,可以用于创建美观、易于使用的图形用户界面。TTK是“Themed Tkinter”(主题化Tkinter)的缩写,它提供了一些新的控件,如Combobox、Treeview和Progressbar等,同时也支持自定义主题。使用Python Tkinter TTK,可以快速创建跨平台的GUI应用程序。 ### 回答2: Python tkinter ttkPython中的一个GUI用户界面开发工具,其全称为“Python Tkinter Themed Tk”,也称作“ttkinter”。它是针对Tkinter库的一个扩展,使用ttk框架能够提供更加现代化、美观的主题,同时还可以增强控件的功能和易用性。 Python tkinter ttk的主要特点包括以下几个方面: 1. 提供了现代化的UI主题:Python tkinter ttk提供了多种现代化的UI主题,包括黑色主题、窄边框主题等,可以让用户实现更加美观的用户界面。 2. 控件样式更加灵活:ttk控件提供了多种样式,例如Button、Label、Entry、CheckButton等,可以为开发者提供搭建更加灵活的用户界面。 3. 更容易实现基于主题的自定义(Style/Theme customization):Python tkinter ttk提供了Style对象,可以让开发者实现基于主题的自定义,比如改变按钮背景色等。 4. 跨平台兼容性较好:Python tkinter ttk是基于python的标准GUI库Tkinter为基础实现的,因此能够跨平台运行。不同的操作系统也提供了不同主题,可以实现更好的兼容性。 总之,Python tkinter ttk提供了一个简单、易于使用的GUI编程接口,是一个非常优秀的GUI框架。无论是初学者还是经验丰富的开发者,都可以借助Python tkinter ttk来搭建自己的用户界面。 ### 回答3: Python tkinter ttkPython的标准GUI库的一部分,它提供了开发GUI应用程序的工具和组件。 Python tkinter ttk 的' python tkinter'是Python的标准库的一部分,提供了基本的GUI工具包,而'ttk'是这个库内置的一个模块,提供了更强大和现代的GUI工具。 使用Python tkinter ttk可以构建各种GUI应用程序,包括窗口应用程序和Web应用程序。Python tkinter ttk提供了一组丰富的组件和工具,包括按钮、下拉框、复选框、单选框、标签、文本框、滚动条、列表框等等。它还提供了丰富的布局和设计选项,允许开发者创建自定义的、专业的UI界面。 Python tkinter ttk还支持多种事件和回调机制,使得开发人员可以轻松地处理用户交互。 与其他GUI库相比,Python tkinter ttk最大的优势在于它基于Python语言,提供了面向对象的编程方式,易于学习和使用。 Python tkinter ttk的创建过程相对简单,开发人员可以使用设计工具或代码方式快速构建UI界面。它还支持多种平台,例如Windows、Mac和Linux等。 总之,Python tkinter ttk是一个功能强大、易于使用的GUI库,其现代化和丰富的组件和工具,可以帮助开发人员创建高质量的、专业的GUI应用程序,从而提高用户体验和开发效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值