Python 3 中未显示 tkinter 条目文本变量
tkinter entry textvariable not displaying in Python 3
有人问过类似的问题,但 none 反映了我所看到的行为。我有一个在 Python 2.7 中完美运行的 GUI。我最近更新到 3.5.2,并适当地更改了我的 tkinter 导入,因此它可以运行。但是,我的 Entry 小部件的 textvariable 属性的 none 正在显示。这些值已正确存储,只是不显示。这是一个最小的例子:
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)
行,但它不起作用。 运行 这给了我一个空的条目小部件。
我在 Enthought Canopy 中 运行 Python 3.5.2,使用 iPython 5.3.0
正如评论中提到的,这原来是 Canopy 的问题。具体来说,当它使用 tk 作为 Pylab 后端时(Preferences/Python 中的选项)。从 tk 切换它消除了问题。
有人问过类似的问题,但 none 反映了我所看到的行为。我有一个在 Python 2.7 中完美运行的 GUI。我最近更新到 3.5.2,并适当地更改了我的 tkinter 导入,因此它可以运行。但是,我的 Entry 小部件的 textvariable 属性的 none 正在显示。这些值已正确存储,只是不显示。这是一个最小的例子:
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)
行,但它不起作用。 运行 这给了我一个空的条目小部件。
我在 Enthought Canopy 中 运行 Python 3.5.2,使用 iPython 5.3.0
正如评论中提到的,这原来是 Canopy 的问题。具体来说,当它使用 tk 作为 Pylab 后端时(Preferences/Python 中的选项)。从 tk 切换它消除了问题。