Python 图形用户界面编程python
Python的默认GUI工具集是Tk,咱们能够经过Python的Tkinter接口来使用Tk.编程
咱们能够跟以前同样,经过import来引入Tk,能够先在交互窗口看看是否可用:框架
Tkinter提供各类控件,如按钮,标签和文本框,一个GUI应用程序中使用。这些控件一般被称为控件或者部件。工具
目前有15种Tkinter的部件。以下表:oop
控件布局
描述字体
Buttonui
按钮控件;在程序中显示按钮。spa
Canvas插件
画布控件;显示图形元素如线条或文本
Checkbutton
多选框控件;用于在程序中提供多项选择框
Entry
输入控件;用于显示简单的文本内容
Frame
框架控件;在屏幕上显示一个矩形区域,多用来做为容器
Label
标签控件;能够显示文本和位图
Listbox
列表框控件;在Listbox窗口小部件是用来显示一个字符串列表给用户
Menubutton
菜单按钮控件,因为显示菜单项。
Menu
菜单控件;显示菜单栏,下拉菜单和弹出菜单
Message
消息控件;用来显示多行文本,与label比较相似
Radiobutton
单选按钮控件;显示一个单选的按钮状态
Scale
范围控件;显示一个数值刻度,为输出限定范围的数字区间
Scrollbar
滚动条控件,当内容超过可视化区域时使用,如列表框。.
Text
文本控件;用于显示多行文本
Toplevel
容器控件;用来提供一个单独的对话框,和Frame比较相似
Spinbox
输入控件;与Entry相似,可是能够指定输入范围值
PanedWindow
PanedWindow是一个窗口布局管理的插件,能够包含一个或者多个子控件。
LabelFrame
labelframe是一个简单的容器控件。经常使用与复杂的窗口布局。
tkMessageBox
用于显示你应用程序的消息框。
标准属性
标准属性也就是全部控件的共同属性,如大小,字体和颜色等等。
属性
描述
Dimension
控件大小;
Color
控件颜色;
Font
控件字体;
Anchor
锚点;
Relief
控件样式;
Bitmap
位图;
Cursor
光标;
几何管理
Tkinter控件有特定的几何状态管理方法,管理整个控件区域组织,一下是Tkinter公开的几何管理类:包、网格、位置
几何方法
描述
pack()
包装;
grid()
网格;
place()
位置;
咱们经过一个小例子来简单演示一下:
#!/usr/bin/ env python
#coding=utf-8
from Tkinter import *
#在进度条被拉伸的时候自动调整内部文字大小
def resize(ev=None):
label1.config(font='Helvetica -%d bold' % scale1.get())
top = Tk()
#定义一个标签控件
label1 =Label (top, text = 'Hello Python!')
#对标签进行包装
label1.pack()
#定义一个滚动条
scale1 = Scale(top, from_=10, to = 40, orient=HORIZONTAL, command=resize)
#范围控件默认为12
scale1.set(12)
#对范围控件进行包装
scale1.pack(fill=X, expand=1)
#定义一个button
button1 = Button(top,text='Quit', command=top.quit(), bg='red', fg='white')
#对button进行包装
button1.pack(fill=X, expand=1)
#进入消息循环
mainloop()
运行一下,初始效果:
拉动滚动条: