Tkinter lift()功能不会将框架抬高到前面

时间:2018-04-17 01:49:50

标签: python user-interface tkinter graphics

我希望我的start_button(在start_frame上标记为“End”)将end_frame带到前面。这应该显示end_button(在end_frame上标记为“Start”)。

然后我想要end_button(标记为“开始”)将用户提升回start_frame。

这基本上可以通过使用按钮将一个放到顶部来切换start_frame和end_frame。

然而,我的lift()函数并没有将事物移到顶端。我知道lift()不能将儿童框架移到父母之上,但我不认为我犯了这个错误。我哪里错了?

import Tkinter as tk

root = tk.Tk()
root.geometry("400x400")

#create main frame for window. This will hold all pages of the menu.
container = tk.Frame(root)
container.pack(side="top", fill="both", expand=True)
container.grid_rowconfigure(0, weight=1)
container.grid_columnconfigure(0, weight=1)

#create subframes
start_frame = tk.Frame(container)
start_frame.grid(row=0, column=0, sticky="nsew", in_ = container)

end_frame = tk.Frame(container)
end_frame.grid(row=0, column=0, sticky="nsew", in_ = container)

#create UI widgets for subframew
start_button = tk.Button(start_frame, text="End", fg="blue", command = end_frame.lift())
start_button.pack(side = tk.BOTTOM)

end_button = tk.Button(end_frame, text="Start", fg="blue", command = start_frame.lift())
end_button.pack(side = tk.BOTTOM)



root.mainloop()

编辑:我试过调用start_button.lift()和end_button.lift(),但它给了我相同的结果。

0 个答案:

没有答案