在Python Label中使用Tkinter无法识别anchor = CENTER

时间:2018-02-28 23:39:33

标签: python tkinter label justify

我是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()

这是命名空间问题吗?我该如何解决这个问题呢?

2 个答案:

答案 0 :(得分:0)

*获取所有子包。使用import tkinter as tk只需将包的名称从tkinter更改为tk。

您还没有告诉您的脚本CENTER是tkinter的一部分。 (您在使用*时自动执行此操作)但现在您必须明确告知CENTER是tkinter的一部分:

tk.CENTER

答案 1 :(得分:0)

CENTER模块的一个变量(实际上它们通常被称为常量),等于'center'。所以只需用以下代码替换行:

label.place(..., anchor='center')