2014-12-02 52 views
6

我正在开发在Windows 8.1上使用Visual Studio 2013 Visual Studio 2013社区版中的Python工具。我的问题是我无法获得一个Tkinter窗口来启动。我已经使用这个代码的尝试:无法在Visual Studio中使用Python工具启动Tkinter窗口

from tkinter import * 
Tk() 

当我启动从IDLE和这样的代码,我能得到一个Tkinter的窗口,如图所示:

tkinter in idle

然而,当我开始这在Visual Studio中,不会出现Tkinter窗口,只有控制台窗口。没有错误被抛出。例如:

tkinter in vs

如何获得Tkinter的窗口出现时,我在Visual Studio中启动该程序与Python的工具?

编辑:此外,当我尝试从VS Python交互窗口做到这一点,这是我所得到的,没有窗户显示:

>>> from tkinter import * 
>>> Tk() 
<tkinter.Tk object at 0x02D81FD0> 
+0

这可能是由于tkinter主循环未自动启动。尝试'root = Tk(); root.mainloop()' – fhdrsdg 2014-12-02 15:14:28

+0

这似乎没有不同的效果。 – Jake 2014-12-02 15:18:17

+1

我认为PTVS使用IPython作为它的控制台,因此在运行代码启动Tk事件循环之前,您应该能够运行'%gui tk'。 – 2014-12-03 01:56:19

回答

1

最有可能的问题是,你是不是开始事件循环。没有事件循环,程序将立即退出。试着改变你的程序是这样的:

import tkinter as tk 
root = tk.Tk() 
root.mainloop() 

你不需要调用主循环在空闲的原因是因为IDLE不适合您。在所有其他情况下,您必须调用mainloop。

相关问题