pack 转载于https://www.cnblogs.com/kongzhagen/p/6144588.html\
1. 使用pack函数的时候,默认先使用放到上面的,然后依次从上向下排
2. 可接受的默认参数
side : 按钮停靠在窗口的哪个位置
left: 左
right: 右
top: 上
bottom: 下
fill: 填充
x: 水平方向填充
y: 竖直方向填充
bottom:水平和竖直方向填充
none: 不填充
expand:
yes: 扩展整个空白区
no: 不扩展
anchor:
N: 北 下
E: 东 右
S: 南下
W: 西 左
padx:x方向的外边距
pady:y方向的外边距
ipadx:x方向的内边距
ipady:y方向的内边距
from tkinter import * root = Tk() Button(root,text='A').pack(side=LEFT,expand=YES,fill=Y) Button(root,text='B').pack(side=TOP,expand=YES,fill=BOTH) Button(root,text='C').pack(side=RIGHT,expand=YES,fill=NONE) Button(root,text='D').pack(side=LEFT,expand=NO,fill=Y) Button(root,text='E').pack(side=TOP,expand=YES,fill=BOTH) Button(root,text='F').pack(side=BOTTOM,expand=YES) Button(root,text='G').pack(anchor=SE) root.mainloop()
效果图 :
grid() 通常是进行栅格样式的摆放方式
import tkinter root = tkinter.Tk() root.minsize(500, 500) btn1 = tkinter.Button(root, text='按钮1') btn1.grid(row=0, column=0) btn2 = tkinter.Button(root, text='按钮2') btn2.grid(row=0, column=1) btn3 = tkinter.Button(root, text='按钮3') btn3.grid(row=1, column=0) btn3 = tkinter.Button(root, text='按钮4') btn3.grid(row=1, column=1) btn4 = tkinter.Button(root, text="按钮5") btn4.grid(row=2, column=0, columnspan=2, ipadx=20) # 占据两行 btnd = tkinter.Button(root, text='按钮0') btnd.grid(row=0, column=2, rowspan=2, ipady=16) # 占据两列 root.mainloop()
place() 主要采用的是绝对的摆放方式,主要是方式由两种 第一种x, y, width, height 和 relx, rely, relwidth, relheight 按照比例进行摆放
import tkinter # 创建主窗口对象 root = tkinter.Tk() root.minsize(500, 500) # root.geometry('500x300+500+200') # 设置固定窗口的大小 btn1 = tkinter.Button(root, text='按钮1') btn1.place(relx=100 / 500, rely = 50 / 500, ) btn2 = tkinter.Button(root, text='按钮2') btn2.place(relx=200/500, rely=50/500, relwidth=0.1, relheight=0.3) root.mainloop()