编程初入门

【tkinter三种布局-Grid布局 】

2020-01-02  本文已影响0人  叶子陪你玩

想要涉及一款UI界面的程序软件,首先得先把界面构思出来(可以在纸上画出来或者其它工具),接着就得用tkinter将他们安按照设计的样子放好,什么部件(按钮,图片,文本框等)该摆什么位置,前后左右间距多少等。在tkinter中一共有三种布局方式,各有千秋,根据具体情况选择最好的方式。

下面就来看看三种布局方法,都什么时候用比较合适,然后该怎么用。

常用参数:

row:行数,使用row=2
column:列数,使用column=2
sticky:部件默认是在格子中间的,通过使用sticky=N,S,W,E中的一个字符表示放在各格子的上下左右。
columnspan:表示占用几列 columnspan=2,表示这个部件占用两列
rowspan:表示占用几行 rowspan=2,表示这个部件占用两列
ipadx,ipady表示是内部的边距
padx,pady表示是外部的边距

案例

代码:

from tkinter import *
from PIL import Image, ImageTk

master = Tk()

Label(master, text="First").grid(row=0, sticky=E)
Label(master, text="Second").grid(row=1, sticky=W)

e1 = Entry(master)
e2 = Entry(master)
e1.grid(row=0, column=1)
e2.grid(row=1, column=1)

checkbutton = Checkbutton(master, text="同意协议")
checkbutton.grid(columnspan=2, sticky=W)

# photo = PhotoImage(file="test.gif")
image = Image.open("test.png")
photo = ImageTk.PhotoImage(image)
label = Label(image=photo)
label.grid(row=0, column=2, columnspan=2, rowspan=2,
           sticky=W+E+N+S, padx=5, pady=5)

button1=Button(master,text="Zoom in")
button2 = Button(master, text="Zoom out")
button1.grid(row=2, column=2)
button2.grid(row=2, column=3)

mainloop()
图片文件

参考:http://effbot.org/tkinterbook/grid.html

(全文完)


长按二维码,加关注!叶子陪你玩

欢迎转载,转载请注明出处!
欢迎关注公众微信号:叶子陪你玩
分享自己的python编程学习之路

上一篇下一篇

猜你喜欢

热点阅读