一、介绍

Tkinter是Python默认的GUI库,我们经常使用的IDLE就是用Tkinter设计出来的,因此我们在使用的时候直接导入Tkinter模块就好了。

1.特点:可移植性、灵活性高

2.构成:Tk + interface = Tkinter

二、第一次体验Tkinter

1.接下来举个例:

import tkinter as tk

root = tk.Tk()  # 创建一个主窗口,用于容纳整个GUI程序
root.title("YfacesClub") # 设置主窗口对象的标题栏
theLable = tk.Label(root,text = "我的第二个窗口程序") # 生成标签,Lable组件可以显示文本、图标或者图片
theLable.pack() # 将标签添加到主窗口,调用Lable组件的pack()方法,用于自动调节组件自身的尺寸
root.mainloop() # 显示窗口,执行后,程序进入主事件循环

执行程序后,如图:

GUI库之认识Tkinter(一)-LMLPHP

三、封装成类

举个例子:

class App():
def __init__(self, root):
     # 创建一个框架,然后在里面添加一个Button按钮组件
     # 框架一般是用于在复杂的布局中起到将组件分组的作用
      frame = tk.Frame(root)
      frame.pack(side = tk.LEFT, padx=10, pady=10) # 自定义按钮组件的方位
# 创建一个按钮组件,fg是foreground的缩写,就是设置前景色的意思
      self.yfaces = tk.Button(frame,text = "打招呼",bg = "red",fg = "blue", command = self.say_hi) # command参数:指定按钮消息的回调函数
      self.yfaces.pack(side = tk.LEFT) # 通过修改pack()的side参数来设置LEFT,RIGHT,TOP,TOTTOM的四个方位,默认的设置是side=tkinter.TOP def say_hi(self): print("朋友们好,我是YfacesClub") 
# 创建一个toplevel的根窗口,并把它作为参数实例化app对象
root = tk.Tk()
root.title("YfacesClub")
app = App(root)
# 开始主事件循环
root.mainloop()

1.pack()方法--用于自动调节组件自身的尺寸

side参数:组件在主窗口的位置

 使用格式:pack(side=tk.LEFT)

 GUI库之认识Tkinter(一)-LMLPHP

LEFT:左对齐
RIGHT:右对齐
TOP:顶部
BOTTOM:底部 padx参数:自定义按钮的偏移位置,x轴间距
pady参数:自定义按钮的偏移位置,y轴间距
2.Button按钮组件
参数:
fg(foreground):设置前景色
bg(background):设置背景色
 
04-20 15:50