当前位置: 首页 > 面试题库 >

(C ++)适用于Linux的MessageBox(如MS Windows)

龚苏燕
2023-03-14
问题内容

我需要为Linux(SDL)应用程序实现一个简单的图形消息框,类似于C 中的Windows MessageBox(gcc / g
4.4.0)。它需要做的就是显示字幕,消息和确定或关闭按钮,并在单击该按钮时返回到调用功能。

SDL仅使用X(11)打开用于(OpenGL)渲染的窗口。

我浏览了有关GTK实现的类似主题,但是该实现似乎无法正常工作。

我也尝试过wxWidgets的wxMessageBox函数,但是编译标头会使编译器在include / c ++ / 4.4.0 / bits /
stl_algobase.h(openSuSE 11.1 32位上为gcc 4.4.0
32位)上引发有关语法错误的错误消息。使用wxWidgets还意味着必须链接大量的库,将STL添加到我的应用程序中(这不需要其他操作),并且谁知道其他什么,因此我不想使用wxWidgets。

X11 / motif(openmotif)具有我所需要的(XmCreate {Error | Warning |
InfoDialog),但是它们需要一个我没有的父窗口小部件(例如顶层窗口),并且不接受NULL参数。

所以我现在很沮丧。有一种简单的方法可以做我想要的吗?还是至少有一半简单/简单/直截了当?如果是的话,哪一个(提供尽可能多的细节将不胜感激)。


问题答案:

在SDL2中,您现在可以显示消息框:

http://wiki.libsdl.org/SDL_ShowSimpleMessageBox

int SDL_ShowSimpleMessageBox(Uint32      flags,
                             const char* title,
                             const char* message,
                             SDL_Window* window)

http://wiki.libsdl.org/SDL_ShowMessageBox

int SDL_ShowMessageBox(const SDL_MessageBoxData* messageboxdata,
                       int*                      buttonid)


 类似资料:
  • 问题内容: 我的团队和我正在基于无人机Parrot API的项目中工作。我们正在尝试找到一个API,以编写一个可以扫描无线网络并选择无人机ESSID的小程序。我们的主要语言是C,但Java也受到赞赏。 我试图查看iwlist / iwconfig命令是否存在任何API,但没有找到任何东西。有人可以帮我吗?任何示例(代码示例)也将不胜感激。 格拉西亚斯 问题答案: 使用较新的内核,用于管理无线卡的框

  • 问题内容: 什么是适用于Linux的C / C ++最好的音频播放api,最好是免费/开源的?对于嵌入式Linux,我需要它,所以我正在寻找尽可能轻巧的东西,并且没有太多依赖关系? 问题答案: SDL真的很好

  • 问题内容: 编辑:适用于root,sudo是问题。参见下文。 我有一个带有自己的库的目录,例如我的Python库位于。 我已通过将以下行添加到所有用户(包括root)将此目录添加到 Python的PATH 中: 它适用于所有用户(包括root用户)。但这不适用于sudo。有什么办法可以使sudo使用吗? 编辑:更多信息: 我已经添加到sudoers文件像这样:。西特尔不起作用。 问题答案: 我的解

  • 问题内容: 我想在Linux服务器上以剖析模式运行Java程序。 是否有任何可以在命令提示符下对Linux服务器上的Java程序进行概要分析的概要分析工具? 问题答案: 所有这些Java性能分析工具都可以在Linux中使用: 你的包 JProfiler HPROF(Java 5+) 杰拉特

  • 我为fips证书生成实现了Bouncy Castle,这在物理linux环境下运行良好,但在linux虚拟机上,代码被困在密钥对生成上。以下是我编写的代码: 我找到了一个类似的帖子,但它对我不起作用。Bouncy Castle不适用于linux机器 初始电流熵值为1700(按照给定的步骤,应为3000-4000)。我尝试了给定的步骤,熵值增加到2600(按照给定的步骤,它应该在4000以上)。 我

  • 有人能帮我解决这个问题吗?当然,在Linux上运行时,我已经将路径更改为。