推荐阅读:
grid()
将父窗口划分为横竖均匀排列的格子,组件通过行号(row)、列号(column)确定自己的位置
行号相同列号不同的几个组件会被依次上下排列,列号相同行号不同的几个组件会被依次左右排列
主要参数
我们使用help()方法查看grid的帮助文档
参数 | 描述 |
---|---|
column | 指定组件放入的列数 ,第一列索引为0 |
columnspan | 指定组件横跨多少列 |
row | 指定组件放入行数,第一行索引为0 |
rowspan | 指定组件横跨多少行 |
sticky | 类似pack()方法的anchor选项 |
案例:grid布局实现一个简单的计算器界面
from tkinter import *
class App:
def __init__(self,master):
self.master=master
self.fun()
def fun(self):
entry=Entry(width=25)
entry.pack()
frame=Frame(self.master)
frame.pack(side=TOP)
names=('0','1','2','3','4','5','6','7','8','9','+','-','x','/','.','=')
for i in range(len(names)):
button=Button(frame,text=names[i],width=6)
button.grid(row=i//4,column=i%4) # 整除取row行,取余得column列
root=Tk()
root.title('grid布局')
App(root)
root.mainloop()
运行结果