Tkinter详解
文章平均质量分 95
Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口。Tk和Tkinter可以在大多数的Unix平台下使用,同样可以应用在Windows和Macintosh系统里,Tk8.0的后续版本可以实现本地窗口风格,并良好地运行在绝大多数平台中。
来自江南的你
这个作者很懒,什么都没留下…
展开
-
Tkinter 模块:标准对话框
目录(一)messagebox(消息对话框)(二)filedialog(文件对话框)(三)colorchooser(颜色选择对话框)Tkinter 为了提供了三种标准对话框模块,它们分别是:messagebox filedialog colorchooser注:这三个模块原来是独立的,分别是 tkMessageBox、tkFileDialog 和 tkColorChoos...原创 2019-01-02 10:59:09 · 6664 阅读 · 3 评论 -
Tkinter 布局管理器(三):place
pack、grid 和 place 均用于管理同在一个父组件下的所有组件的布局,其中:pack 是按添加顺序排列组件 grid 是按行/列形式排列组件 place 则允许程序员指定组件的大小和位置何时使用 place 管理器?通常情况下不建议使用 place 布局管理器,因为对比起 pack 和 grid,place 要做更多的工作。不过纯在即合理,place 在一些特殊的情况下可以...原创 2019-01-02 10:08:16 · 7139 阅读 · 0 评论 -
Tk(根窗口)和 Toplevel(顶级窗口)的方法汇总
下边这一系列方法用于与窗口管理器进行交互。他们可以被 Tk(根窗口)进行调用,同样也适用于 Toplevel(顶级窗口)。注:并非所有操作系统均完全支持下方所有方法的实现。aspect(minNumer=None, minDenom=None, maxNumer=None, maxDenom=None)-- 控制该窗口的宽高比(width:height)-- 宽高比限制在:minNum...原创 2019-01-02 09:59:23 · 19995 阅读 · 0 评论 -
Tkinter 组件详解(十九):Toplevel
Toplevel(顶级窗口)组件类似于 Frame 组件,但 Toplevel 组件是一个独立的顶级窗口,这种窗口通常拥有标题栏、边框等部件。何时使用 Toplevel 组件?Toplevel 组件通常用在显示额外的窗口、对话框和其他弹出窗口上。用法下边例子中,我们在 root 窗口添加一个按钮用于创建一个顶级窗口,点一下来一个:import tkinter as tkr...原创 2019-01-02 09:59:00 · 18534 阅读 · 0 评论 -
Tkinter 组件详解(十八):PanedWindow
PanedWindow 组件(Tk8.4 新增)是一个空间管理组件。跟 Frame 组件类似,都是为组件提供一个框架,不过 PanedWindow 允许让用户调整应用程序的空间划分。何时使用 PanedWindow 组件?当你需要提供一个可供用户调整的多空间框架的时候,可以使用 PanedWindow 组件。PanedWindow 组件会为每一个子组件生成一个独立地窗格,用户可以自由调整窗...原创 2019-01-02 09:42:05 · 12728 阅读 · 0 评论 -
Tkinter 组件详解(十七):Spinbox
Spinbox 组件(Tk8.4 新增)是 Entry 组件的变体,用于从一些固定的值中选取一个。何时使用 Spinbox 组件?Spinbox 组件通常用于在限定数字中选取的情况下代替普通的 Entry 组件。注意:Spinbox 组件仅支持 Python2.3 和 Tk8.4 以上版本。用法Spinbox 组件跟 Entry 组件用法非常相似,主要区别是使用 Spinbox...原创 2019-01-02 09:28:37 · 16614 阅读 · 2 评论 -
Tkinter 组件详解(十六):Message
Message(消息)组件是 Label 组件的变体,用于显示多行文本消息。Message 组件能够自动换行,并调整文本的尺寸使其适应给定的尺寸。何时使用 Message 组件?Message 组件用于显示简单的文本消息,通常你可以使用 Label 来代替。如果你希望使用多种字体来显示文本,那么应该使用 Text 组件。用法创建一个 Message 组件,所有你要做的事就是指定要显...原创 2019-01-02 09:08:40 · 19376 阅读 · 0 评论 -
Tkinter:事件绑定
正如我们此前提到的,一个 Tkinter 应用程序大部分时间花费在事件循环中(通过 mainloop() 方法进入)。事件可以有各种来源:包括用户触发的鼠标和键盘操作和窗口管理器触发的重绘事件(在多数情况下是由用户间接引起的)。Tkinter 提供一个强大的机制可以让你自由地处理事件,对于每个组件来说,你可以通过 bind() 方法将函数或方法绑定到具体的事件上。widget.bind(...原创 2018-12-27 11:12:12 · 12047 阅读 · 7 评论 -
Tkinter 组件详解(十五):OptionMenu
OptionMenu(选择菜单)事实上是下拉菜单的改版,它的发明弥补了 Listbox 组件无法实现下拉列表框的遗憾。用法创建一个选择菜单非常简单,只需要它一个 Tkinter 变量(用于记录用户选择了什么)以及若干选项即可:import tkinter as tkroot = tk.Tk()variable = tk.StringVar()variable.set("on...原创 2018-12-27 11:00:22 · 10291 阅读 · 1 评论 -
Tkinter 组件详解(十四):Menubutton
Menubutton 组件是一个与 Menu 组件相关联的按钮,它可以放在窗口中的任意位置,并且在被按下时弹出下拉菜单。何时使用 Menubutton 组件?在 Tkinter 的早期版本,Menubutton 组件主要是用于实现顶级菜单,但现在我们直接用 Menu 组件就可以实现了。因此,现在该组件适用于你希望菜单按钮出现在其他位置的时候。用法创建一个 Menubutton 组件...原创 2018-12-27 10:49:26 · 9272 阅读 · 0 评论 -
Tkinter 组件详解(十三):Menu
Menu(菜单)组件用于实现顶级菜单、下拉菜单和弹出菜单。何时使用 Menu 组件?Menu 组件通常被用于实现应用程序上的各种菜单,由于该组件是底层代码实现,所以不建议你自行通过按钮和其他组件来实现菜单功能。用法创建一个顶级菜单,你需要先创建一个菜单实例,然后使用 add() 方法将命令和其它子菜单添加进去:import tkinter as tkroot = tk.T...原创 2018-12-27 10:37:59 · 35681 阅读 · 6 评论 -
Tkinter 组件详解(十二):Canvas
Canvas(画布)组件为 Tkinter 的图形绘制提供了基础。Canvas 是一个高度灵活的组件,你可以用它绘制图形和图表,创建图形编辑器,并实现各种自定义的小部件。何时使用 Canvas 组件?Canvas 是一个通用的组件,通常用于显示和编辑图形。你可以用它来绘制线段、圆形、多边形,甚至是绘制其它组件。用法在 Canvas 组件上绘制对象,可以用 create_xxx() ...原创 2018-12-27 10:20:32 · 47382 阅读 · 4 评论 -
Tkinter 组件详解(十一):Text
Text(文本)组件用于显示和处理多行文本。在 Tkinter 的所有组件中,Text 组件显得异常强大和灵活,适用于多种任务。虽然该组件的主要目的是显示多行文本,但它常常也被用于作为简单的文本编辑器和网页浏览器使用。何时使用 Text 组件?Text 组件用于显示文本文档,包含纯文本或格式化文本(使用不同字体,嵌入图片,显示链接,甚至是带 CSS 格式的 HTML 等)。因此,它常常也被...原创 2018-12-25 16:26:08 · 110873 阅读 · 32 评论 -
Tkinter 布局管理器(二):grid
Tkinter 布局管理器之gridpack、grid 和 place 均用于管理同在一个父组件下的所有组件的布局,其中:pack 是按添加顺序排列组件 grid 是按行/列形式排列组件 place 则允许程序员指定组件的大小和位置何时使用 grid 管理器?grid 管理器可以说是 Tkinter 这三个布局管理器中最灵活多变的。如果你只希望学习使用一个布局管理器,那么 gri...原创 2018-12-20 15:40:25 · 19553 阅读 · 1 评论 -
Tkinter 布局管理器(一):pack
Tkinter 布局管理器之packpack、grid 和 place 均用于管理同在一个父组件下的所有组件的布局,其中:pack 是按添加顺序排列组件 grid 是按行/列形式排列组件 place 则允许程序员指定组件的大小和位置何时使用 pack 管理器?对比 grid 管理器,pack 更适用于少量组件的排列,但它在使用上更加简单(就像我们前边所有的例子中,展示一个组件我们...原创 2018-12-20 15:28:20 · 9578 阅读 · 0 评论 -
Tkinter 组件详解(十):Scale
Tkinter 组件详解之ScaleScale(刻度)组件看起来像是一个带数据的 Scrollbar(滚动条)组件,但事实上它们是不同的两个东东。Scale 组件允许用于通过滑动滑块来选择一个范围内的数字。你可以控制该组件的最大值、最小值,以及分辨率。何时使用 Scale 组件?当你希望用户输入某个范围内的一个数值,使用 Scale 组件可以很好的代替 Entry 组件。用法创...原创 2018-12-20 15:08:07 · 9271 阅读 · 1 评论 -
Tkinter 组件详解(九):Scrollbar
Tkinter 组件详解之ScrollbarScrollbar(滚动条)组件用于滚动一些组件的可见范围,根据方向可分为垂直滚动条和水平滚动条。Scrollbar 组件常常被用于实现文本、画布和列表框的滚动。何时使用 Scrollbar 组件?Scrollbar 组件通常几乎与 Text 组件、Canvas 组件和 Listbox 组件一起使用,水平滚动条还能跟 Entry 组件配合。...原创 2018-12-20 14:40:21 · 32806 阅读 · 7 评论 -
Tkinter 组件详解(八):Listbox
Tkinter 组件详解之ListboxListbox(列表框)组件用于显示一个选择列表。Listbox 只能包含文本项目,并且所有的项目都需要使用相同的字体和颜色。根据组件的配置,用户可以从列表中选择一个或多个选项。何时使用 Listbox 组件?Listbox 组件通常被用于显示一组文本选项,Listbox 组件跟Checkbutton和Radiobutton组件类似,不过...原创 2018-12-20 14:28:21 · 63138 阅读 · 7 评论 -
Tkinter 组件详解(七):Entry
Tkinter 组件详解之EntryEntry(输入框)组件通常用于获取用户的输入文本。何时使用 Entry 组件?Entry 组件仅允许用于输入一行文本,如果用于输入的字符串长度比该组件可显示空间更长,那内容将被滚动。这意味着该字符串将不能被全部看到(你可以用鼠标或键盘的方向键调整文本的可见范围)。如果你希望接收多行文本的输入,可以使用 Text组件(后面介绍)。用法使...原创 2018-12-20 13:57:40 · 88999 阅读 · 6 评论 -
Tkinter 组件详解(六):LabelFrame
Tkinter 组件详解之LabelFrameLabelFrame 组件是Frame组件的变体。默认情况下,LabelFrame 会在其子组件的周围绘制一个边框以及一个标题。何时使用 LabelFrame 组件?当你想要将一些相关的组件分为一组的时候,可以使用 LabelFrame 组件,比如一系列Radiobutton(单选按钮)组件。用法为组件分组,需要先创建一个 L...原创 2018-12-20 10:12:19 · 19801 阅读 · 4 评论 -
Tkinter 组件详解(五):Frame
Tkinter 组件详解之FrameFrame(框架)组件是在屏幕上的一个矩形区域。Frame 主要是作为其他组件的框架基础,或为其他组件提供间距填充。何时使用 Frame 组件?Frame 组件主要用于在复杂的布局中将其他组件分组,也用于填充间距和作为实现高级组件的基类。用法Frame 组件可以用于装饰界面:import tkinter as tkmaster = ...原创 2018-12-20 10:04:03 · 58137 阅读 · 0 评论 -
Tkinter 组件详解(四):Radiobutton
Tkinter 组件详解之RadiobuttonRadiobutton(单选按钮)组件用于实现多选一的问题。Radiobutton 组件可以包含文本或图像,每一个按钮都可以与一个 Python 的函数或方法与之相关联,当按钮被按下时,对应的函数或方法将被自动执行。Radiobutton 组件仅能显示单一字体的文本,但文本可以跨越多行。另外,还可以为其中的个别字符加上下划线(例如用于表示键盘...原创 2018-12-19 21:58:33 · 28968 阅读 · 2 评论 -
Tkinter 组件详解(三):Checkbutton
Tkinter 组件详解之CheckbuttonCheckbutton(多选按钮)组件用于实现确定是否选择的按钮。Checkbutton 组件可以包含文本或图像,你可以将一个 Python 的函数或方法与之相关联,当按钮被按下时,对应的函数或方法将被自动执行。Checkbutton 组件仅能显示单一字体的文本,但文本可以跨越多行。另外,还可以为其中的个别字符加上下划线(例如用于表示键盘快捷...原创 2018-12-19 21:43:10 · 28362 阅读 · 1 评论 -
Tkinter 组件详解(二):Button
Tkinter 组件详解之Button简介Button(按钮)组件用于实现各种各样的按钮。Button 组件可以包含文本或图像,你可以将一个 Python 的函数或方法与之相关联,当按钮被按下时,对应的函数或方法将被自动执行。Button 组件仅能显示单一字体的文本,但文本可以跨越多行。另外,还可以为其中的个别字符加上下划线(例如用于表示键盘快捷键)。默认情况下,tab 按键被用于在按...原创 2018-12-19 08:16:45 · 36527 阅读 · 1 评论 -
Tkinter 组件详解(一):Label
Tkinter 组件详解之LabelLabel(标签)组件用于在屏幕上显示文本或图像。Label 组件仅能显示单一字体的文本,但文本可以跨越多行。另外,还可以为其中的个别字符加上下划线(例如用于表示键盘快捷键)。何时使用 Label 组件?Label 组件用于显示文本和图像,并且使用双缓冲,这样你就可以随时更新内容,没有恼人的闪烁。如果希望显示的数据用户可以进行操作,使用 Canv...原创 2018-12-18 21:35:06 · 80499 阅读 · 19 评论