gpt4 book ai didi

python - 我无法设置顶级标题

转载 作者:行者123 更新时间:2023-12-03 08:55:37 25 4
gpt4 key购买 nike

我想为TopLevel设置标题,但是TopLevel显示的是Root的标题。我认为我的下一个脚本与 TkInter 文档中的示例相对应,但给了我不好的结果。您能否解释一下,为什么我在 class AppTop 中设置 master.title = 'Top' 没有为 TopLevel 设置新标题?

import tkinter as tk

class AppTop(tk.Frame):

def __init__(self, master):
mon_h = 900
mon_w = 1250

master.title = 'Top'

tk.Frame.__init__(self, master)
master.minsize(height = 900, width = 600)

fr_button = tk.Frame(master)
fr_button.place(relx=0.01, rely=0.06)

butArrowPlus = tk.Button(fr_button, text=">", height = 1, width = 20, command=self.Cmd)
butArrowPlus.grid(column= 1, row= 1)
return

def Cmd(self):
return

class Application(tk.Frame):
def __init__(self, master):
tk.Frame.__init__(self, master)

frRoot = tk.Frame(master, width=700, height=400, bd=2)
frRoot.place(relx=0.1, rely=0.1, anchor="nw")

butIllumBall = tk.Button(frRoot, text= 'Light Ball', height = 1, width = 20, command=self.cmd_illuminated_ball)
butIllumBall.grid(column= 0, row= 0, pady=10)

master.minsize(height = 250, width = 300)
master.title('Root')

def cmd_illuminated_ball(self):

top = tk.Toplevel()
top.transient(self.master)
top.grab_set()
app = AppTop(master = top)
app.mainloop()
return

wndRoot = tk.Tk()
appapp = Application(master=wndRoot)
appapp.mainloop()

最佳答案

您尝试设置顶级标题:

master.title = 'Top'

但正确的语法是:

master.title('Top')

还有一些额外的事情:您不需要为顶级窗口添加额外的主循环。从代码来看,您似乎认为 Toplevel 是一个新应用程序,并使用 app = AppTop(master = top) 实例化它。但这只是一个在 appapp.mainloop() 下运行的新窗口。

AppTop() 继承自 tk.Frame() 但您从不使用它。相反,您将所有小部件直接放在顶级(主)窗口中。 Application() 也是如此。

关于python - 我无法设置顶级标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55620787/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com