在 Python GUI 中嵌入 C++ 程序

Posted

技术标签:

【中文标题】在 Python GUI 中嵌入 C++ 程序【英文标题】:Embedding C++ program in Python GUI 【发布时间】:2016-12-19 19:07:51 【问题描述】:

我已经制作了一个 gui,我想知道如何将 C++ 程序嵌入到 gui 的一部分中。因此,例如,在我的主窗口中,如果您单击“开始游戏”,则会打开一个带有一些图形显示的新窗口,并且 C++ 游戏将嵌入/执行其中。我看过一些关于包装器和在 c++ 中使用 python 的文章,但我对它没有很好的理解,所以我不确定在这种情况下这些是否适用于我。如果可能,它应该是 .cpp 还是 .exe?我更倾向于认为它应该是一个可执行文件,但显然我不知道我在做什么。我将不胜感激任何帮助或指导。

【问题讨论】:

.cpp 文件只是文本文件...您需要将程序编译为可执行文件或库以供 python 调用 【参考方案1】:

这里最简单的解决方案是在 cpp 中创建一个独立的应用程序,该应用程序只需由您的 python gui 使用系统调用来调用:os.system()。如果您改为创建一个库 (DLL) 并将其包装到带有 swig 之类的 python 库中,您可以直接调用函数并可能将 GL 渲染器之类的东西包装到 qt 框架小部件中(如果您想要一个 3d 渲染小部件,这有一直 done before 所以不要浪费时间重新发明***)

【讨论】:

我已经有了 cpp,它只是一行调用 :os.system(path) 还是我需要添加其他东西以便 Python 知道如何处理它?对于这样一个“牵手”的问题,我很抱歉,但我一点也不熟悉,需要在几个小时内准备好(如果我能做到的话)。感谢您的帮助。

以上是关于在 Python GUI 中嵌入 C++ 程序的主要内容,如果未能解决你的问题,请参考以下文章

如何中断嵌入在 C++ 应用程序中的 python 解释器

从 C++ 停止嵌入式 Python 提示符

嵌入在 C++ 中的 Python

将 Python 控制台集成到 GUI C++ 应用程序中

在 Cygwin/GCC C++ 程序中嵌入 Windows Python

在 C++ 应用程序中嵌入 python 环境