为什么python GUI界面转瞬即逝

时间:2013-12-29 03:07:33

标签: python windows user-interface vim wxpython

#coding=utf-8
import wx 
class App(wx.App):
    def OnInit(self):
        frame=wx.Frame(parent=None,title='Bare')
        frame.Show()
        return Ture
app=App()
app.MainLoop()

运行正常!但GUI界面稍纵即逝,只需将CMD控制台留在屏幕上即可。 一个更新的python,为什么GUI界面的结果稍纵即逝? 环境:GVIM + WIN7 + PYTHON2.7

2 个答案:

答案 0 :(得分:1)

首先,根据help :!的{​​{1}}命令:

  

vim使用 shell 执行{cmd}。

:!{cmd}导致cmd shell被执行。

其次,根据Using Python on Windows - Executing scripts

  

Python脚本(扩展名为.py的文件)将由执行   vim默认。 此可执行文件会打开一个终端   即使程序使用GUI也会打开。如果你不想这样做   发生,使用将导致脚本的扩展名python.exe by   默认情况下由.pyw执行(两个可执行文件都位于   Python安装目录的顶级)。这抑制了   启动时的终端窗口。

因此,如果您想在没有cmd控制台的情况下运行GUI程序,请使用pythonw.exe在vim外部运行程序。例如,使用pythonw.exe扩展名保存文件,然后双击该文件。

答案 1 :(得分:0)

由于您的代码中存在NameError,因此稍纵即逝。你应该返回True,而不是Ture,这是未定义的。

我很惊讶你仍然看到了控制台窗口。如果它保持不变,它应该显示回溯。