400-616-5551

您所在位置: 首页> 学习课程> python培训 | pack布局、grid布局、place布局三个布局函数

python培训 | pack布局、grid布局、place布局三个布局函数

发布百知教育 来源:学习课程 2019-11-05

今天终于可以给大家讲一下布局函数了,这一节把三个布局函数给大家讲明白,首先讲的是最常用的pack布局


# 默认使用tk作为tkinter的缩写

import tkinter as tk


# 生成一个Tk对象(也叫主窗体对象)

root = tk.Tk()


# 设置窗体的名称

root.title("GUI第一弹")


# 设置窗体的大小,中间的是小写的x

root.geometry("300x300")


root['background'] = "pink"


# 第一个参数主要是说明控件的父窗口是谁

# text属性是控件上面的文字

label = tk.Label(root, text="你好啊,我是Label控件", bg="orange", fg="white", font="楷体")

label.pack()


# 让窗体循环起来,窗体才会一直显示

root.mainloop()



python培训



大家可以看到,在没有给pack函数任何参数的情况下,默认的是居中放置控件的,咱们看看它有什么参数吧:



python培训




 这里需要注意的也是主要用到的两个属性,一个是anchor另一个是side,anchor指的是控件的对齐方式,side指的是控件的摆放位置,主要是相对于父窗口来说的.


# 默认使用tk作为tkinter的缩写

import tkinter as tk


# 生成一个Tk对象(也叫主窗体对象)

root = tk.Tk()


# 设置窗体的名称

root.title("GUI第一弹")


# 设置窗体的大小,中间的是小写的x

root.geometry("300x300")


root['background'] = "pink"


# 第一个参数主要是说明控件的父窗口是谁

# text属性是控件上面的文字

label1 = tk.Label(root, text="你好啊,我是Label控件", bg="orange", fg="white", font="楷体")

label1.pack(anchor="w", ipadx=10, pady=10)


label2 = tk.Label(root, text="你好啊,我是Label控件", bg="orange", fg="white", font="楷体")

label2.pack(anchor="w", ipadx=10)


# 让窗体循环起来,窗体才会一直显示

root.mainloop()



python培训


下面介绍一下grid布局,这个布局主要是采用行和列的方式进行控件的布局的,此处row和column只是相对的关系,下面看个简单的例子:

# 默认使用tk作为tkinter的缩写

import tkinter as tk


# 生成一个Tk对象(也叫主窗体对象)

root = tk.Tk()


# 设置窗体的名称

root.title("GUI第一弹")


# 设置窗体的大小,中间的是小写的x

root.geometry("300x300")


root['background'] = "pink"


# 第一个参数主要是说明控件的父窗口是谁

# text属性是控件上面的文字

label1 = tk.Label(root, text="你好啊,我是Label控件", bg="orange", fg="white", font="楷体")

label1.grid(row=0, column=0)


label2 = tk.Label(root, text="你好啊,我是Label控件", bg="orange", fg="white", font="楷体")

label2.grid(row=1, column=0)


# 让窗体循环起来,窗体才会一直显示

root.mainloop()


python编程


常用参数有:



python培训


这里只解释一下sticky参数,主要是用于对齐的,比如:


  sticky=N/S/E//W:顶端对齐/底端对齐/右对齐/左对齐

  sticky=N+S:拉伸高度,使其在水平方向上顶端和底端都对齐

  sticky=E+W,拉伸宽度,使其在垂直方向上左边界和右边界都对齐



# 默认使用tk作为tkinter的缩写

import tkinter as tk


# 生成一个Tk对象(也叫主窗体对象)

root = tk.Tk()


# 设置窗体的名称

root.title("GUI第一弹")


# 设置窗体的大小,中间的是小写的x

root.geometry("300x300")


# root['background'] = "pink"


# 第一个参数主要是说明控件的父窗口是谁

# text属性是控件上面的文字

btn1 = tk.Button(root, text="btn1", fg="red", font="楷体", width=3, height=4)

btn1.grid(row=0, column=0, sticky="we")


btn2 = tk.Button(root, text="btn2", fg="blue", font="楷体")

btn2.grid(row=1, column=0, sticky="we")


# 让窗体循环起来,窗体才会一直显示

root.mainloop()


python培训


最后说一下place布局,这个采用的是绝对位置,所以不用担心控件位置移动什么的,但是坐标需要自己去调,咱们做的那个小项目就是采用的place布局,先看一个简单的例子吧:



# 默认使用tk作为tkinter的缩写

import tkinter as tk


# 生成一个Tk对象(也叫主窗体对象)

root = tk.Tk()


# 设置窗体的名称

root.title("GUI第一弹")


# 设置窗体的大小,中间的是小写的x

root.geometry("300x300")


# root['background'] = "pink"


# 第一个参数主要是说明控件的父窗口是谁

# text属性是控件上面的文字

btn1 = tk.Button(root, text="btn1", fg="red", font="楷体")

btn1.place(x=0, y=0)


btn2 = tk.Button(root, text="btn2", fg="blue", font="楷体")

btn2.place(x=0, y=40)


# 让窗体循环起来,窗体才会一直显示

root.mainloop()


python培训


现在看一下,这个函数有哪些参数吧:


python培训


因为place布局函数不是怎么用,所以就不怎么进一步介绍了,平常只用x,y这两个参数,主要用来指定控件的坐标的。



注:


 一般在一个程序中pack布局和grid布局不能同时使用,肯定会报错,除非是在一个frame里面。

另外就是大家一定要动手实践,我的例子仅仅是抛砖引玉的作用。


python培训:http://www.baizhiedu.com/python2019



上一篇:python培训 | Python基本常识&Python环境搭建

下一篇:应届生去公司找个Java程序员的职位需要什么技能?

相关推荐

www.baizhiedu.com

有位老师想和您聊一聊

关闭

立即申请