学习笔记Python - tkinter
Posted SAP剑客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习笔记Python - tkinter相关的知识,希望对你有一定的参考价值。
tkinter
tkinter是一个开放源码的图形接口开发工具,原来是用TCL(Tool Command Language,工具命令语言)编写的GUI函数库,最初发展是从1991年开始,具有跨平台的特性,可以在Linux、Windows、Mac OS等操作系统上执行。
tkinter工具提供了许多图形接口,例如标签(Label)、菜单(Menu)、按钮(Button)等,目前,这个tkinter工具已经移植到Python语言,属于Python语言内建的模块,成为挺好tkinter模块。
tkinter安装
tkinter属于Python的内建模块,直接导入此模块即可。
建立窗口
通常使用Tk()方法建立的窗口称为根窗口(容器Container),之后可以在此根窗口中建立许多控件,也可以在此根窗口中建立上层窗口。
窗口的属性设置:
方法 | 说明 |
title() | 可以设置窗口的标题 |
geometry(“widthxheight+x+y”) | 设置窗口宽width与高heigh,单位是像素pixel,设定窗口的位置 |
maxsize(width,height) | 拖拽时可以设置窗口最大的宽与高 |
minsize(width,height) | 拖拽时可以设置窗口最小的宽与高 |
configure(bg=”color”) | 设置窗口的背景颜色,可以用两个16进制数字表示 |
resizable(True,True) | 可设置是否更改窗口大小,参数一是宽,参数二是高,固定宽和高,使用resizable(0,0) |
state(“zoomed”) | 最大化窗口 |
iconify() | 最小化窗口 |
iconbitmap(“xx.ico”) | 更改默认窗口图标,可以使用本地ico类型图标 |
窗口位置的设置
上面的geometry()方法不仅可以设置窗口的大小,还可以设置窗口的位置,此时它的语法如下:
geometry(widthxheight+x+y)
其中,
“widthxheigh”表示窗口的宽和高,
“+x”表示x是窗口左边距离屏幕左边的距离,
“-x”表示x是窗口右边距离屏幕右边的距离,
“+y”表示y是窗口上边距离屏幕上边的距离,
“-y”表示y是窗口下边距离屏幕下边的距离。
案例:设计一个窗口,将其放在屏幕中央。
认识tkinter的Widget
Widget可以翻译为控件、部件或者组件,窗口建立后,需要窗口内建立控件,我们将这些控件统称为Widget。
在tkinter中所有的Widget其实都是面向对象的类,通过调用构造方法来达到建立相关Widget控件的目的。
- Button(按钮)
- Canvas(画布)
- Checkbutton(多选按钮)
- Entry(文本框)
- Frame(框架)
- Label(标签)
- LabelFrame(标签框架)
- Listbox(列表框)
- Menu(菜单)
- MenuButton(菜单按钮)
- Message(消息)
- OptionMenu(下拉式菜单)
- PanedWindow(面板)
- Radiobutton(单选按钮)
- Scale(尺度)
- Scrollbar(滚动条)
- Spinbox(可微调输入控件)
- Text(文字区域)
- Toplevel(上层窗口)
Widget共同属性
设计控件的时候会看到下列共同属性:
- Dimensions:大小
- Colors:颜色
- Fonts:字体
- Anchor:锚(位置参考点)
- Relief styles:属性边框
- Bitmaps:显示位图
- Cursors:鼠标外形
Widget共同的方法
设计控件的时候会看到下列共同方法:
类别 | 方法 | 描述 |
Configuration | config(option=value) | 程序执行时重新设置Widget属性 |
cget(“option”) | 取得option参数值 | |
keys() | 获得所有该Widget的参数 | |
Event Processing | mainloop() | 让程序继续执行,同时进入等待与处理窗口事件 |
quit() | Python Shell窗口结束,但所建窗口继续执行 | |
update() | 更新窗口画面 | |
Event callbacks | bind(event,callback) | 事件绑定 |
unbind(event) | 解除绑定 | |
Alarm handlers | after(time,callback) | 间隔指定时间后调用callback()方法 |
以上是关于学习笔记Python - tkinter的主要内容,如果未能解决你的问题,请参考以下文章