我是tkinter的新手并且一直在使用:
from tkinter import *
但已经读过这是不好的做法。 我重写了一小段代码,开始使用以下代码:
import tkinter as tk
然而,当我运行剩下的代码时。我收到错误:
label.place(relx=0.4, rely=0.35, anchor=CENTER)
NameError: name 'CENTER' is not defined
root = tk.Tk()
label = tk.Label(root, text="I am a label widget")
label.place(relx=0.4, rely=0.35, anchor=CENTER)
button = tk.Button(root, text="I am a button")
label.pack()
button.pack()
root.mainloop()
这是命名空间问题吗?我该如何解决这个问题呢?
答案 0 :(得分:0)
*
获取所有子包。使用import tkinter as tk
只需将包的名称从tkinter更改为tk。
您还没有告诉您的脚本CENTER
是tkinter的一部分。 (您在使用*
时自动执行此操作)但现在您必须明确告知CENTER
是tkinter的一部分:
tk.CENTER
答案 1 :(得分:0)
CENTER
是tkinter模块的一个变量(实际上它们通常被称为常量),等于'center'
。所以只需用以下代码替换行:
label.place(..., anchor='center')