首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Python中进行布局管理

如何在Python中进行布局管理
EN

Stack Overflow用户
提问于 2021-03-24 14:10:37
回答 1查看 159关注 0票数 0

我附上了两张图片,显示我目前正在得到的布局(图1)和我想要的布局(图2)、(绿色框位置的标签3和紫色框位置的条目1)。可以使用pack()作为图像2输出,还是需要grid()place()输出?

我得到了这个布局:

我想要这种布局:

我目前正在获取的图像1代码

代码语言:javascript
复制
from tkinter import *

root = Tk()
root.geometry('1000x700+0+0')
root.minsize('1000','700')

f1 = Frame(root, bd=5, relief=GROOVE, width=500, height=500)
f1.pack(fill=BOTH, expand=True, padx=30, pady=30)

f2 = Frame(f1, bg='pink', bd=5, relief=GROOVE)
f2.place(anchor=CENTER, relx=0.5, rely=0.5, relwidth=0.8, relheight=0.8)

lbl_1 = Label(f1, text='Label 1',  bg='yellow', bd=2.5, relief=GROOVE,  font=('Times New Roman',20,'bold'))
lbl_1.pack(side=TOP, pady=5)

lbl_2 = Label(f2, text='Label 2',  bg='yellow', bd=2.5, relief=GROOVE,  font=('Times New Roman',20,'bold'))
lbl_2.pack(side=TOP, pady=5)

lbl_3 = Label(f2, text='Label 3', bg='yellow', bd=2.5, relief=GROOVE,  font=('Times New Roman',15,'bold'))
lbl_3.pack(pady=10)

txt_1 = Entry(f2, text='Txt 1', bd=2.5, relief=SUNKEN,  font=('Times New Roman',15,'bold'))
txt_1.pack(pady=10)

lbl_4 = Label(f2, text='Label 4',  bg='yellow', bd=2.5, relief=GROOVE,  font=('Times New Roman',20,'bold'))
lbl_4.pack(side=BOTTOM, pady=5)

root.mainloop()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-24 17:22:00

需要在anchor="w"中使用.pack(...)将标签和条目移动到左侧,并使用padx添加水平边距

代码语言:javascript
复制
...
lbl_3.pack(padx=30, pady=10, anchor="w")
...
txt_1.pack(padx=30, pady=10, anchor="w")
...
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66782854

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档