我有以下最低限度的计划来描述我的问题。
在运行代码时,会出现一个启动屏幕,其中有一个
标签(行=0)和登录按钮(行=1)。当一
登录
他/她将进入带有注销按钮(第0行)和文本框(第1行)的主屏幕。我想要
只有
grid_rowconfigure(1, weight=1)
注销
这个
grid_rowconfigure
配置仍然存在,并且启动屏幕已损坏。
import tkinter as tk
class example(tk.Tk):
def __init__(self):
super().__init__()
self.start()
def start(self):
tk.Label(text='Welcome').grid(row=0, column=0)
tk.Button(text='Login', command=self.home).grid(row=1, column=0)
def home(self):
self.clear_widgets()
self.attributes('-zoomed', True) #Full Screen
self.grid_rowconfigure(1, weight=1)
tk.Button(text='Logout', command=self.logout).grid(row=0, column=0)
tk.Text().grid(row=1, column=0, sticky="ns")
def logout(self):
self.attributes('-zoomed', False) #Back to original
self.clear_widgets()
self.start()
def clear_widgets(self):
for widget in self.winfo_children():
widget.destroy()
example().mainloop()
另外,将登录按钮的行改为2可以解决我的问题,但我相信这是一个黑客行为。