首页 > 解决方案 > Tkinter - 如何使小部件居中(Python)

问题描述

我从 Python 中的 GUI 开始,但遇到了问题。我已经在我的框架中添加了小部件,但它们总是在左侧。我尝试了一些来自互联网的示例,但我没有管理它。我试过.place了,但它对我不起作用。有人能告诉我如何将小部件放在中间吗?

代码:

import tkinter as tk

def site_open(frame):
    frame.tkraise()

window = tk.Tk()

window.title('Test')
window.geometry('500x300')

StartPage = tk.Frame(window)
FirstPage = tk.Frame(window)

for frame in (StartPage, FirstPage):
    frame.grid(row=0, column=0, sticky='news')

lab = tk.Label(StartPage, text='Welcome to the Assistant').pack()
lab1 = tk.Label(StartPage, text='\n We show you helpful information about you').pack()
lab2 = tk.Label(StartPage, text='\n \n Name:').pack()
ent = tk.Entry(StartPage).pack()
but = tk.Button(StartPage, text='Press', command=lambda:site_open(FirstPage)).pack()

lab1 = tk.Label(FirstPage, text='1Page').pack()
but1 = tk.Button(FirstPage, text='Press', command=lambda:site_open(StartPage)).pack()

site_open(StartPage)
window.mainloop()

标签: python-3.xtkintertkinter-layout

解决方案


创建完成后window,添加:

window.columnconfigure(0, weight=1)

更多在网格几何管理器


推荐阅读