1.tkinter
tkinter是Python下面向tk的图形界面接口库,可以方便地进行图形界面设计和交互操作编程。tkinter的优点是简单易用、与Python的结合度好。tkinter在Python 3.x下默认集成,不需要额外的安装操作;不足之处为缺少合适的可视化界面设计工具,需要通过代码来完成窗口设计和元素布局。
本节采用的Python版本为3.x,如果想在python 2.x下使用tkinter,请通过apt-get进行安装。需要注意的是,不同Python版本下的tkinter使用方式可能略有不同,建议采用Python3。
1.1.hello tkinter
首先介绍一个tkinter的基本例子,在IDLE中新建hello_tkinter.py,代码如下:
import tkinter as tk
# 建立tkinter窗口,设置窗口标题
top = tk.Tk()
top.title("Hello Test")
# 在窗口中创建标签
labelHello = tk.Label(top, text = "Hello Tkinter!")
labelHello.pack()
# 运行并显示窗口
top.mainloop()
然后是top的概念和pack操作的说明:略……(懒得写啦哈哈)
表1 Label组件常用参数
参数
描述
height
组件的高度(所占行数)
width
组件的宽度(所占字符个数)
fg
前景字体颜色
bg
背景颜色
justify
多行文本的对齐方式,可选参数为: LEFT、 CENTER、RIGHT
padx
文本左右两侧的空格数(默认为1)
pady
文本上下两侧的空格数(默认为1)
在Shell下运行程序,就可以显示出一个简单的窗口了。
$ python3 hello_tkinter.py
Tkinter窗口效果
1.2.tkinter常用组件
虽然1.1中我们已经设计出了tkinter的基本窗口,但这时的窗口还过于简陋,除了显示信息以外无法实现任何有效的功能。为了完成更多的用户交互功能,我们还需要了解更多的tkinter界面元素,本节将介绍一些常用的tkinter组件。
1.2.1.按钮组件
按钮组件(Button)是tkinter最常用的图形组件之一,通过Button可以方便地与用户进行交互。下列代码实现了通过触发按钮事件(按下按钮)来执行指定操作(改变标签内容)的例子。
import tkinter as tk
def btnHelloClicked():
labelHello.config(text = "Hello Tkinter!")
top = tk.Tk()
top.title("Button Test")
labelHello = tk.Label(top, text = "Press the button...", height = 5, width = 20, fg = "blue")
labelHello.pack()
btn = tk.Button(top, text = "Hello", command = btnHelloClicked)
btn.pa