有人问过类似的问题,但没有一个问题反映我的行为。我有一个可以在Python 2.7中完美运行的GUI。我最近更新到3.5.2,并适当地更改了我的tkinter导入,因此它可以运行。但是,我的Entry小部件的textvariable属性都没有显示。值已正确存储,只是不显示。这是一个最小的示例:
import tkinter as tk
class App:
def __init__(self,window):
self.root = window
self.var = tk.DoubleVar()
self.entry = tk.Entry(self.root,textvariable=self.var)
self.var.set(1.3)
self.entry.pack()
main = tk.Tk()
App(main)
main.mainloop()
我还尝试过在初始化后立即放置self.var.set(1.3)
行,但这行不通。运行它会给我一个空的条目小部件。
我正在使用iPython 5.3.0在Enthought Canopy中运行Python 3.5.2
答案 0 :(得分:0)
正如评论中提到的那样,事实证明这是冠层问题。具体来说,当它为Pylab后端使用tk时(Preferences / Python中的选项)。从tk切换它消除了这个问题。