gpt4 book ai didi

c++ - 通过 ActiveX 在 WPF 中使用 OpenGL?

转载 作者:行者123 更新时间:2023-11-28 03:21:06 26 4
gpt4 key购买 nike

我计划在 WPF 中嵌入一个非托管 C++ OpenGL 查看器。要求是(除了稳健性和易于开发)

  • 适当调整大小
  • OpenGL 查看器区域的上下文菜单(仅用于查看器相关操作)
  • 事件(例如,通过在 OpenGL 查看器中选择对象触发)
  • WPF 对话框应该绘制在 OpenGL 空间之上

到目前为止,我已经找到了一些关于使用托管 WinForm 控件(通过 C++/CLI 包装器)的博客和讨论,但是要完成我的所有上述要求(如果可能的话)似乎有点棘手(甚至有点修补) ).

如何创建一个 ActiveX 控件?尽管没有创建 ActiveX 控件的经验,但一个优势就是它在自己的进程中运行。

这是个好主意还是我会遇到更多的修补?

编辑:我应该更清楚地了解 OpenGL 查看器。它是基于仅支持 OpenGL 的 C++ 3D 引擎的现有应用程序。移植到支持 DirectX 的引擎被认为是最后的手段。

最佳答案

虽然我没有使用 ActiveX,但我已经完成了我相信您正在努力实现的目标。两条信息帮助我走上了这条路。

  1. 混合托管和非托管代码

    • 事实证明,托管 C++ 的编译方式与非托管 C++ 完全不同,数据存储在完全不同的堆中。幸运的是,您可以使用...将代码段标记为托管或非托管...

    #pragma managed
    #pragma unmanaged

  2. OpenGL 上下文管理

    • 我遵循了类似于 this article 中描述的方法。
    • 如果您需要管理多个 OpenGL 窗口,wglMakeCurrent 和 wglShareLists 将是您的伙伴

祝你好运!

关于c++ - 通过 ActiveX 在 WPF 中使用 OpenGL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15401530/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com