前言我们在日常使用各种桌面软件时,当我们想要搜索一个内容时,都会出现一个列表框,供我们选择,如下图:图片Tkinter提供了列表框(Listbox)控件来实现类似的功能。...Listbox控件列表框,即 Listbox。在使用 Tkinter 进行 GUI 编程的过程中,如果需要用户自己进行选择时就可以使用列表框控件。...列表框中的选项可以是多个条目,也可以是单个唯一条目,但常用于多个条目。...,示例代码如下:import tkinter as tkfrom tkinter import messageboxwindow = tk.Tk()window.title("拜仁慕尼黑")window.geometry...lb.get(lb.curselection()) # 设置label值 var1.set(val) except Exception as e: e = '发现一个错误
def turn_property(event): #自定义回调函数 trun_proerty event.widget["activeforeground"]="red" #鼠标左键按下时,...标题显示红色 event.widget["text"]="OK" #鼠标指针接触按钮时,标题变 OK btn1.bind("",turn_property) #bind()绑定鼠标进入事件...lb_show=Listbox(master,bg="yellow",height=5,width=20) #创建黄色列表框实例 lb_show.pack(side="top") #相对于(8)进行顶对齐列表框...lb_show1['yscrollcommand']=s_show.set #把滚动条对象赋给对象列表框属性 lb_show1.pack(side="right") #把滚动条的列表框定位(9)的右边...信息(12) b_show=Button(master,text="确认",fg="black") #创建按钮实例 b_show.bind("",showMessage) #按钮对象绑定鼠标回调事件
在阅读本文前,请确保你已经或可能满足以下条件: 电脑中已经安装配置好Python3环境 了解Python3的基础语法,比如导入模块,基础语句,面向对象 学习GUI编程指南: 在这个GUI领域QT横行的年代...使用tk的一般套路是,先创建一个主窗口,也就是一个Tk()类, 进行一些列操作之后需,进入消息循环。...,如列表框。....列表框控件:Listbox Listbox用来创建一个列表框,列表框内包含很多选项,用户可以选择一项或者多项。...经常别用作文本浏览器或者网页浏览器。
@TOC 前言 本篇文章主要python第三方库Tkinter库的使用,包括输入框(Entry)控件,Spinbox控件,Listbox(列表框)控件和Combobox(复合框)控件它们的常用属性和方法以及具体的示例和相应的效果图...,比如密码可以将值设为 show="*" textvariable 输入框内值,也称动态字符串,使用 StringVar() 对象来设置,而 text...# 定义一个函数,用于验证数字输入 def check_int(): if not entry4.get().isdigit(): messagebox.showerror("错误...,xscrollcommand=scrollbar.set) scrollbar.config(command=entry3.xview) entry3.insert(0, "请输入内容,内容过长时会出现滚动条...提到列表框(Listbox)控件,就不得不讲一下与它非常相似的复选框(Combobox)控件,后续会讲。
Python自带了tkinter 模块,实质上是一种流行的面向对象的GUI工具包 TK 的Python编程接口,提供了快速便利地创建GUI应用程序的方法。...在实例化控件时,实例的属性可以“属性=属性值”的形式枚举列出,不区分先后次序。...列表框控件的主要方法见下面的表: ? 执行自定义函数时,通常使用“实例名.surselection()” 或 “selected” 来获取选中项的位置索引。...如果使用该控件,应先与from tkinter import ttk 语句引用ttk子模块,然后创建组合框实例: 实例名=Combobox(根对象,[属性列表]) 指定变量var=StringVar(...root)#这是下面的框架 var = tk.StringVar()#储存文字的类 var.set("你在右边会看到一个图片,\n我在换个行")#设置文字 #创建一个标签类, [justify]:
前言上文我们介绍了tkinter的列表框处理,我们在日常生活中还会遇到组合框的情况,tkinter同样可以实现这个功能,下面我们来介绍一下tkinter如何实现组合框。...注:Combobox 并不包含在 tkinter 模块中,而是包含在tkinter.ttk子模块中,因此若想使用 Combobox 控件,需要使用下面的导包方式:from tkinter import...ttkCombobox语法如下所示:cbox=Combobox(窗口对象,[参数列表])Combobox 控件在形式虽然与列表控件存在不同,但它们的本质是相同,因此属性和方法是通用的。...(win)# 布局text.grid(pady = 5)win.mainloop()运行程序,结果如下:图片我们可以在下拉框中选择其他的选项,如下:图片每一次选择,都会在下方出现选项。...总结本文主要介绍了tkinter组合框的实现,组合框的使用比列表框更为多见,更为方便,希望能够帮助到大家,后续我们将介绍tkinter的单选框多选框如何实现。
# 创建窗口对象的背景色 # 创建两个列表li = ['C','python','php','html','SQL','java']...多选框控件;用于在程序中提供多项选择框 Entry 输入控件;用于显示简单的文本内容 Frame 框架控件;在屏幕上显示一个矩形区域,多用来作为容器 Label 标签控件;可以显示文本和位图 Listbox 列表框控件...label比较类似 Radiobutton 单选按钮控件;显示一个单选的按钮状态 Scale 范围控件;显示一个数值刻度,为输出限定范围的数字区间 Scrollbar 滚动条控件,当内容超过可视化区域时使用...,如列表框。....控件有特定的几何状态管理方法,管理整个控件区域组织,一下是Tkinter公开的几何管理类:包、网格、位置 几何方法 描述 pack() 包装; grid() 网格; place() 位置; 以上内容转自
eg: from tkinter import * #导入模块 tk_bg = Tk() #创建窗口 tk_bg.title("阁下的相册") #修改窗口名字 fm1 = Frame() #生成集中管理对象...多选框控件;用于在程序中提供多项选择框 Entry 输入控件;用于显示简单的文本内容 Frame 框架控件;在屏幕上显示一个矩形区域,多用来作为容器 Label 标签控件;可以显示文本和位图 Listbox 列表框控件...label比较类似 Radiobutton 单选按钮控件;显示一个单选的按钮状态 Scale 范围控件;显示一个数值刻度,为输出限定范围的数字区间 Scrollbar 滚动条控件,当内容超过可视化区域时使用...,如列表框。....2、Tkinter几何管理 Tkinter控件有特定的几何状态管理方法,管理整个控件区域组织,以下是Tkinter公开的几何管理类:包、网格、位置 ?
这篇文章不会介绍如何灵活地运用Tkinter,而是阐述Tkinter这个库包括什么,它能干什么!...),Widget都继承于Pack,Place,Grid,它们都属于几何管理器类。...用于在程序中提供多项选择框 Entry 输入控件;用于显示简单的文本内容 Frame 框架控件;在屏幕上显示一个矩形区域,多用来作为容器 Label 标签控件;可以显示文本和位图 Listbox 列表框控件...比较类似 Radiobutton 单选按钮控件;显示一个单选的按钮状态 Scale 范围控件;显示一个数值刻度,为输出限定范围的数字区间 Scrollbar 滚动条控件,当内容超过可视化区域时使用...,如列表框 Text 文本控件;用于显示多行文本 Toplevel 容器控件;用来提供一个单独的对话框,和Frame比较类似 Spinbox 输入控件;与Entry类似,但是可以指定输入范围值
tkinter 导包并创建Tk()对象 实例化Tk()对象就等于创建了一个画布,我们在这个画布上进行“创作”即可 PS:最后结尾需要调用mainloop这个方法。...from tkinter import * # 实例化对象 root = Tk() # 设置窗口标题 root.title("窗口标题") # 设置宽高以及xy轴的位置。...能够与一个函数关联,当按钮被按下时,自动调用该函数。属性可以直接参考标签 ps:tkinter的组件有很多通用属性。感兴趣的可以CSDN刷一波 # Button按钮组件。...selectmode属性默认值是BROWSE Listbox: yscrollcommand 列表框纵向滚动时的回调监听,该属性的值是一个回调函数 xscrollcommand 列表框横向滚动时的回调监听...大概3小时就可以掌握了。下面是我脚本的源码。
由于 Tkinter 是内置到 python 的安装包中、只要安装好 Python 之后就能 import Tkinter 库、而且 IDLE 也是用 Tkinter 编写而成、对于简单的图形界面 Tkinter...多选框控件;用于在程序中提供多项选择框 Entry 输入控件;用于显示简单的文本内容 Frame 框架控件;在屏幕上显示一个矩形区域,多用来作为容器 Label 标签控件;可以显示文本和位图 Listbox 列表框控件...label比较类似 Radiobutton 单选按钮控件;显示一个单选的按钮状态 Scale 范围控件;显示一个数值刻度,为输出限定范围的数字区间 Scrollbar 滚动条控件,当内容超过可视化区域时使用...,如列表框。....控件有特定的几何状态管理方法,管理整个控件区域组织,一下是Tkinter公开的几何管理类:包、网格、位置 几何方法 描述 pack() 包装; grid() 网格;
由于 Tkinter 内置到 python 的安装包中,只要安装好 Python 之后就能 import Tkinter 库。...多选框控件;用于在程序中提供多项选择框 Entry 输入控件;用于显示简单的文本内容 Frame 框架控件;在屏幕上显示一个矩形区域,多用来作为容器 Label 标签控件;可以显示文本和位图 Listbox 列表框控件...label比较类似 Radiobutton 单选按钮控件;显示一个单选的按钮状态 Scale 范围控件;显示一个数值刻度,为输出限定范围的数字区间 Scrollbar 滚动条控件,当内容超过可视化区域时使用...,如列表框。....,管理整个控件区域组织,一下是Tkinter公开的几何管理类:包、网格、位置 几何方法 描述 pack() 包装 grid() 网格 place() 位置
让 GUI 程序启动和运行起来需要以下 5 个主要步骤: 导入 tkinter 模块(python3.x版本); 创建一个顶层窗口对象,用于容纳整个 GUI 应用; 在顶层窗口对象之上(或者“其中...”)构建所有的 GUI 组件(及其功能); 通过底层的应用代码将这些 GUI 组件连接起来; 进入主事件循环; 第一步是琐碎的:所有使用 tkinter 的 GUI 程序都必须导入 tkinter...获得 tkinter 的访问权是首要步骤。 ? ① 窗口和控件 在 GUI 编程中,顶层的根窗口对象包含组成 GUI 应用的所有小窗口对象。它们可能是文字标签、按钮、列表框等。...所以当创建一个顶层窗口时,只是表示需要一个地方来摆放所有的控件。...>>> import tkinter >>> top = tkinter.Tk() tkinter.Tk() 返回的对象通常称为根窗口,这也是一些应用使用 root 而不是 top 来指代它的原因。
选择GUI框架 对于本项目,我们选择使用Python内置的GUI库Tkinter。Tkinter轻量级且易于使用,非常适合初学者和小型项目。 2....代码实现 接下来是我们的Python代码实现: import tkinter as tk from tkinter import messagebox, simpledialog import csv...import os # 学生成绩管理系统类 class GradeSystem(tk.Tk): def __init__(self): super()....self.login_button = tk.Button(self, text="登录", command=self.login) self.login_button.pack() # 显示成绩的列表框...messagebox.showinfo("登录", "登录成功") else: messagebox.showerror("登录", "用户名或密码错误
如果您还没有安装Tkinter,可以使用以下命令进行安装: pip install tk 第一个Tkinter程序 让我们从一个简单的示例开始,创建一个包含"Hello Tkinter!"...root = tk.Tk():创建主窗口对象。 root.title("我的第一个Tkinter程序"):设置主窗口的标题。...button.pack() result_label = tk.Label(root, text="") result_label.pack() root.mainloop() 图片 在这个例子中,当用户点击按钮时,...="选择我") check_button.pack() radio_button = tk.Radiobutton(root, text="选项1") radio_button.pack() 图片 列表框...add_button.pack() remove_button = tk.Button(root, text="删除任务", command=remove_task) remove_button.pack() # 待办事项列表框
出于这样的考虑,今天我们看一下图形用户界面(Graphical User Interface,GUI)编程,看了一下网上python的GUI编码库有很多,但是tkinter是内置库,所以我们还是选择这个内置库作为我们的工具对象了...python3对tkinter库进行了改写,两者的导入方式存在差异 python2导入: import Tkinter python3导入: import tkinter 窗口...多选框控件;用于在程序中提供多项选择框 Entry 输入控件;用于显示简单的文本内容 Frame 框架控件;在屏幕上显示一个矩形区域,多用来作为容器 Label 标签控件;可以显示文本和位图 Listbox 列表框控件...label比较类似 Radiobutton 单选按钮控件;显示一个单选的按钮状态 Scale 范围控件;显示一个数值刻度,为输出限定范围的数字区间 Scrollbar 滚动条控件,当内容超过可视化区域时使用...,如列表框。.
Python自带了tkinter 模块,实质上是一种流行的面向对象的GUI工具包 TK 的Python编程接口,提供了快速便利地创建GUI应用程序的方法。...当使用 Place 布局管理容器中的组件时,需要设置组件的 x、y 或 relx、rely 选项,Tkinter 容器内的坐标系统的原点 (0,0) 在左上角,其中 X 轴向右延伸,Y 轴向下延伸,如图所示...由于列表框实质上就是将Python 的列表类型数据可视化呈现,在程序实现时,也可直接对相关列表数据进行操作,然后再通过列表框展示出来,而不必拘泥于可视化控件的方法。...看下面的一个例子:实现列表框的初始化、添加、插入、修改、删除和清空操作,如下: from tkinter import * def ini(): Lstbox1.delete(0,END)...如果使用该控件,应先与from tkinter import ttk 语句引用ttk子模块,然后创建组合框实例: 实例名=Combobox(根对象,[属性列表]) 指定变量var=StringVar(
为了证明数据响应式与具体界面框架无关,我们直接对同一个需求,同时使用三种界面框架解决(tkinter、flet、nicegui)。 之所以选用它们,只是因为它们安装容易。...先看需求效果: 非常简单的需求,输入框输入文字,点击"添加"按钮,把输入文字添加到下方列表框中。点击"撤销"按钮。把列表框最后一项填回去输入框。...但是,还有几个附加状态需求: 为了避免记录空输入,输入框没有内容时,"添加"按钮不可用 同理,列表框没有记录时,"撤销"按钮不可用 为了避免多次记录重复记录,当列表框最后一项与当前输入框内容一样时,"添加...: 行12:为按钮的点击事件绑定我们自定义的函数 由于函数里面的代码是点击时才被执行,所以里面可以用上外部定义的控件的变量 现在的问题: 输入框没有内容,就不要让用户点击"添加"按钮 当下方列表框最后一笔记录与当前输入框内容一样...然后就是界面组件定义和绑定的代码: 是不是几乎一模一样 本期源码里面还有 tkinter 的实现,也是一样的流程。
;用于显示简单的文本内容 Frame 框架控件;在屏幕上显示一个矩形区域,多用来作为容器 Label 标签控件;可以显示文本和位图 Listbox 列表框控件...Radiobutton 单选按钮控件;显示一个单选的按钮状态 Scale 范围控件;显示一个数值刻度,为输出限定范围的数字区间 Scrollbar 滚动条控件,当内容超过可视化区域时使用...,如列表框。....cursor'] = 'coffee_mug' root.title('我的第一个窗口程序') root.resizable(False,False) root.mainloop() 程序运行之后,就会出现一坨黄黄的...['text'] = "志学Python" label1.pack() # label1显示出来 label2.pack() # label2显示出来 root.mainloop() 程序运行之后就会出现
写在前面 适用对象 适用于学习了TKinter并不想太麻烦写GUI代码,也不想用其他工具和框架 比如wxPython,PyQt4的同学。...ComboBox 组合框在Tkinter中没有对应的控件,比较类似的只有OptionMenu,类似ComboBox 的Style=2 (Dropdown List)时的表现,一个下拉列表,只能在列表中选择一个值...ListBox 列表框对应Python的Listbox,行为也类似,可以在设计阶段设置初始列表。...图标和菜单应该会出现。...如果输出的是面向对象代码,则可以在界面派生类Application中直接访问 对应的控件。
领取专属 10元无门槛券
手把手带您无忧上云