Tkinter - NameError:名称“TopLevel”未定义

Ben*_*cer 1 python tkinter

我正在尝试使用 TopLevel 小部件来创建一个子窗口。但是,当我尝试使用它时,我收到此错误:

NameError: name 'TopLevel' is not defined
Run Code Online (Sandbox Code Playgroud)

我使用的是 Python 3.6,但我也在 3.5 上尝试过,得到了相同的结果。我正在导入 Tkinter:

from tkinter import * 
Run Code Online (Sandbox Code Playgroud)

但我也尝试过

import tkinter as tk
Run Code Online (Sandbox Code Playgroud)

这是其余的相关代码:

def __init__(self):
   self.root = Tk()
   self.teams = []

def createTeamWindows(self):
    teamOneWindow = TopLevel(self.root)
    teamOneWindow.title(self.teams[0].name)
Run Code Online (Sandbox Code Playgroud)

Dam*_*ero 5

你必须调用导入名称,如果不调用,python将如何找到它?像这样,看:

编辑@jasonharper 也说,是顶级

import tkinter as tk

def createTeamWindows(self):
    teamOneWindow = tk.Toplevel(self.root)
    teamOneWindow.title(self.teams[0].name)
Run Code Online (Sandbox Code Playgroud)

就这样 :)

  • 感谢您的回答,不幸的是我现在收到错误: AttributeError: module 'tkinter' has no attribute 'TopLevel' (2认同)