如何使用变量 class 来更新 Toplevel 或 Tk 的标题?

How can I use variable class to update Toplevel or Tk's title?

如何将变量 class(tkinter.StringVar()tkinter.IntVar() 等)分配给 Toplevel 或 Tk 的标题文本?我当前的代码如下所示:

import tkinter as tk

root = tk.Tk()
root.title("Untitled")

titleVar = tk.StringVar()
titleVar.set("Something")

def change_title():
    titleVar.set("Title changed!")
    print(titleVar.get())

tk.Button(text="Update", command=change_title).pack()

root.mainloop()

从未尝试过,但基于 documentationtrace 方法可能会满足您的需求。

由于链接文档只有 "FIXME",我会尝试

def testCallback(*args):
    root.title(titleVar.get())

titleVar.trace("w",testCallback)

之后,当有人修改 titleVar 时,它应该会传播到标题中。可以使用 What are the arguments to Tkinter variable trace method callbacks?

的建议对其进行改进

但是我还没有尝试过这些,而且我也看到虽然这就是你的问题的标题(这就是为什么我把它留在这里),但在描述中你似乎是更感兴趣的是在其他人更改标题时收到通知。