【问题标题】:why is the python GUI interface fleeting为什么python GUI界面转瞬即逝
【发布时间】:2014-01-16 06:53:51
【问题描述】:
#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

【问题讨论】:

  • 当它找不到在任何地方定义的Ture 时,它可能会在NameError 上中断。

标签: python windows user-interface vim wxpython


【解决方案1】:

首先,根据vimhelp :!命令:

:!{cmd} 使用 shell 执行 {cmd}。

vim 导致 cmd shell 被执行。

第二,根据Using Python on Windows - Executing scripts

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

所以,如果你想在没有 cmd 控制台的情况下运行 GUI 程序,请使用 pythonw.exe 在 vi​​m 之外运行程序。例如,以.pyw 为扩展名保存文件,然后双击该文件。

【讨论】:

    【解决方案2】:

    它转瞬即逝,因为您的代码中有 NameError。您应该返回 True,而不是未定义的 Ture。

    我很惊讶你仍然看到控制台窗口。如果仍然存在,它应该会显示回溯。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-17
      • 2011-04-29
      • 2017-09-02
      • 2011-09-24
      • 1970-01-01
      • 1970-01-01
      • 2014-02-15
      • 1970-01-01
      相关资源
      最近更新 更多