无法让 tkinter window 标题从 'tk' 更改

Can't get tkinter window title to change from 'tk'

我认为更改 window 标题的行是:

tk=Tk()

tk.title="my title"

但是我无法在我的代码中更改标题:

def welcome_screen():
    #creates the login window
    window = Tk()
    window.title = "Login Screen"
    window.geometry("960x540+450+250")
    canvas = Canvas(window, width=960, height=540, bd=10, bg='#494949')
    canvas.pack()
    window.mainloop()

welcome_screen()

标题应更改为 "login screen",但当 运行 时,它只会显示 'tk'。 其他一切都按预期工作。

正如@jasonharper 在评论中指出的那样,title 是一种方法而不是属性,因此您需要调用它并传递标题字符串。您的代码的另一个问题是它调用了 Tk() 两次,这通常是行不通的。看起来您使用的 from tkinter import * 被许多人认为是一种糟糕的编程习惯,因为它会导致 hard-to-debug 名称冲突。

下面是解决所有这些问题的代码:

import tkinter as tk

def welcome_screen():
    """ Create and display login window. """
    window = tk.Tk()
    window.title("Login Screen")
    window.geometry("960x540+450+250")
    canvas = tk.Canvas(window, width=960, height=540, bd=10, bg='#494949')
    canvas.pack()
    window.mainloop()

welcome_screen()

title 是一个函数。像这样使用它:

root.title("My new title")

示例:

root = Tk()
root.title("my title")
root.mainloop()