tkinter是实现图形化界面开发python内置的模块,无需安装。我们在使用这个模块的时候直接进行导入即可:
导入的方式:
fromtkinter import *
创建一个窗口对象,即可显示该窗口:
root = Tk()
root叫根窗口,在这个基础上可以创建n多个窗口,和n多个组件。
让程序持续执行:
root.mainloop(),点击窗口的关闭按钮才能关闭程序。
窗口的属性和方法设置
title() 设置窗口的标题
geometry("200x300") 表示宽度为200,高度为300像素的窗口大小
maxsize(400,500) 只能将窗口拖拽扩大400x500的大小
minsize(200,100) 只能将窗口拖拽缩小200x100的大小
configure(bg = "red") 更改窗口的背景颜色,可以是颜色名称,也可以是16进制颜色
resizable(0,0) 不可以更改窗口大小
state("zoomed") 最大化窗口
iconify() 最小化窗口
iconbitmap("文件路径") 更改默认图标, 扩展名是•ico的文件
from tkinter import *
#初始化Tk
root = Tk()
#创建一个label
label = Label(root,text = 'Hello Tkinter')
#label仅仅是一个返回的对象,如果要显示这个对象,比需要要把这个对象装包显示。
label.pack()#显示label对象
同时使用图像与文本
Compound(英文混合的意思):指定文本(text)与图像(bitmap/image)是如何在Label上显示的,可以使用的值如下:
left: 图像居左
right: 图像居右
top: 图像居上
bottom:图像居下
center:文字覆盖在图像上
简单的Button应用
from tkinter import *
#定义Button的回调函数(就是当时间启动所做的事情)
def helloButton():
print ('我是一名中国人')
root = Tk() #创建窗体对象
root.title("你好") #设置窗体标题
root.geometry("300x500") #设置窗体大小
#通过command属性来指定Button的回调函数
Button(root,text = 'Hello Button',command = helloButton).pack()
注意:每点击一次,回调函数就调用一次
Button按钮图片
使用可以使用png、gif这两种格式的图片。如果没有设置按钮的height和width属性,图片的源尺寸就是按钮的大小。
img = PhotoImage(file="py.png")#创建图片对象,如果图片和所编辑的代码文本在同一个文件夹中,可以直接写图片的文件名。
窗口配置方法:pack,grid,place
pack方法
Pack()方法的options有:side、fill、padx/pady
side 参数
from tkinter import *
root = Tk()
label1 = Label(root,text = "天津")
label2 = Label(root,text = "郑州")
label3 = Label(root,text = "乌龙木齐")
label1.pack(side = TOP)
label2.pack(side = TOP)
label3.pack(side = TOP)
Grid网格的意思,有两个属性row(行),column(列)。
label1.grid(row = 1,column = 0)
label2.grid(row = 2,column = 1)
label3.grid(row = 3,column = 2)
Grid中的columnspan(跨列) rowspan(跨行)
place方法
指定插入标签的具体位置,表示控件的具体位置,单位是像素。
label1.place(x = 0,y = 0)
label2.place(x = 30,y = 50)
label3.place(x = 80,y = 100)