在QML中托管QOpenGL小部件

P M*_*P M 8 opengl qt4 qglwidget qml

我有一个库证明了我一个QGLWidget,界面允许我只调整大小/设置大小,并控制一些GL动画; 但没有GL命令暴露在外面,所有我做它初始化GLWidget,然后将上下文传递给库,然后调用交换缓冲区来显示动画..

我想将这个QGLWidget库集成到QML中,是否有可能在QML中加入QGLWidget?如果有,怎么样?

kar*_*lip 4

这完全有可能!您可以编写一个 QML 插件定义一个新的 QML 元素来封装该库。

然后,您将从importQML 文档中获取这个插件,并且您将能够很好地使用新元素并利用该库提供的功能。

提示:如果加载 QML 文档的应用程序设置为在 QGLWidget 上,那么您不需要在插件中创建新的 QGLWidget。我犯过一次这样的错误

这篇博文展示了如何从头开始创建一个简单/新的 QML 元素以及如何在 QML 文档中使用它。