1

我写了一个 wxWidget gui 应用程序。根据参数,在某些情况下会显示一个 gui,但是当程序以静默模式运行时,它只会执行它的任务而不打开窗口。

我可以false在我的App::OnInit()覆盖中返回,应用程序将终止,但退出代码也被设置为表明出现问题。

那么在这种情况下我该如何正确退出呢?如何设置返回码?

4

2 回答 2

2

如果您进入主事件循环,就像您true从中返回一样YourApp::OnInit(),您必须退出它以终止应用程序。这是使用ExitMainLoop()完成的,通常在删除最后一个顶级窗口时调用,但也可以手动调用。

如果您根本不进入主循环事件,那么从 wxWidgets 的角度来看,从返回是立即退出程序的最简单方法,但是,正如您已经知道的那样,这表明初始化应用程序失败,false因此YourApp::OnInit()默认程序以非零退出代码退出。true要返回您自己的退出代码,请继续返回OnInit()并覆盖OnRun(),如果OnInit()成功则调用 next ,然后简单地从那里返回代码,不做任何事情,尤其是不调用将进入主事件循环的基类版本.

于 2013-10-08T21:30:33.857 回答
0

在此处查看文档:http: //docs.wxwidgets.org/2.8/wx_wxappoverview.html

我认为 wxExit 可能是您正在寻找的东西,尽管文档说只在紧急情况下使用它。

于 2013-10-08T18:13:45.860 回答