如何杀死XtAppMainLoop(Motif)?

时间:2009-09-06 18:21:21

标签: c++ motif

我想使用XmCreate {Error | Warning | Info}对话框在我的基于SDL的应用程序的屏幕上显示一些消息,然后它的主窗口打开并且任何程序数据都可用。我希望打开对话框,打印预期的消息,当用户单击“确定”按钮时,应该关闭/删除对话框以及我必须为其创建的顶部窗口小部件。现在afaik XtAppMainLoop将循环并处理顶部窗口小部件消息(一个窗口?),直到用户关闭它。我想在对话框返回时关闭它。我怎么能这样做?

2 个答案:

答案 0 :(得分:2)

经过数小时和数小时的谷歌搜索和阅读后,我发现你可以使用XtAppSetExitFlag(XtAppContext)。

答案 1 :(得分:1)

很容易,在从XtAppMainLoop返回的XtAppContext中,只需执行p->exit_flag = 1;

应用程序通常只包含自己的主循环并执行他们想要的任何操作。所有XtAppMainLoop都会调用XtAppNextEvent(app, &event)然后调用XtDispatchEvent(&event)