Tkinter调整框架内框架的大小

2024-04-20 02:12:54 发布

您现在位置:Python中文网/ 问答频道 /正文

在python中,我使用tkinter模块来创建登录屏幕。当所有的小部件都在正确的位置时,它完全可以正常工作,但是唯一的问题是当我把屏幕拖大时,小部件的大小并没有随着主窗口的大小而增加。在

from tkinter import *

root = Tk()

f1 = Frame(root)
f1.grid(row=0, column=0, sticky='news')

enter = Frame(f1)

e1 = Entry(enter,font=('Consolas',15),width=25)
e1.insert(0,'E-mail')
e1.pack(pady=10)

e2 = Entry(enter,font=('',15),show='*',width=25)
e2.insert(0,'E-mail')
e2.pack(pady=20)
enter.grid(row=1,column=0,columnspan=3,padx=20,sticky='nsew')

loginframe = Frame(f1)
loginbutton = Button(loginframe,text='Login!',bg='lightblue',height=2,width=39)
loginbutton.pack()
loginframe.grid(row=2,column=0,columnspan=3,sticky='ew')

account = Frame(f1)
Label(account,text="Don't have an account yet?").pack(side=LEFT)
link = Label(account,text="Sign Up!",cursor='hand2',fg='blue',
               font=('Helvetica',8,'underline'))
link.pack(side=BOTTOM)

account.pack()
account.grid(row=3,column=0,columnspan=3)

root.mainloop()

Tags: columnaccountrootwidthframepackgridrow
1条回答
网友
1楼 · 发布于 2024-04-20 02:12:54

默认情况下,列和行不会更改大小,但您可以使用它来更改大小。在

columnconfigure(col_number, weight=1)
rowconfigure(row_number, weight=1)

如果有两行的weight不同,则weight较大的行将更快地调整大小。在

我添加了背景色的框架,看看哪一个仍然没有改变大小。在

^{pr2}$

调整大小之前:

enter image description here

使用columnconfigurerowconfigure调整大小后 公司名称:

enter image description here

没有columnconfigure和{}

enter image description here

相关问题 更多 >