VAPS XT入门教程15.05:DrawingIntegration机制

系列索引:VAPS XT入门教程索引

上一篇:VAPS XT入门教程15.04.03:自定义计算器

开发环境

首先先准备一个VAPS XT编译生成的DLL文件,使用VAPS编译就可以了。

创建一个空白的QWidget项目。

在*.ui文件中添加QWidget窗口,至少一个用于显示效果。

这是我的界面:

ui

QOpenGLWidget类

在FFmpeg系列和OpenGL系列中有提及Qt+OpenGL的开发,本文简单介绍一下。

首先创建一个类,继承QOpenGLWidget和QOpenGLFunctions。

有三个必须实现的虚函数:

1
2
3
4
protected:
void initializeGL() override;
void paintGL() override;
void resizeGL(int width, int height) override;

initializeGL用于初始化,PaintGL用于实时绘图,resizeGL用于调整界面大小。三个函数由基类直接调用。

首先添加头文件

定义接口

创建接口对象:

初始化

就是常用的清空缓冲区、设置背景色等等。

绘图

和普通的OpenGL程序一样,不过最重要的是调用接口通知VAPS XT DLL进行绘图。

调整大小

加载DLL

使用QLibrary来加载DLL,解析DLL的函数列表,设置调用参数,然后初始化接口。

取消加载

调用接口关闭,重置指针。

测试

编译运行,运行效果

Windows+Linux下Qt动态加载VAPS XT动态链接库视频(与LINUX版使用的是同一份代码,所以就放在一起了)- B站

完整Qt代码在VAPS_XT中的dlload。测试用的DLL由官方示例编译而来。

下一篇:VAPS XT入门教程15.05.01:Qt动态加载VAPS XT so

技术交流群,欢迎加入讨论。这个圈子很小,大佬可能没兴趣加这些群聊社区之类的。所以只能带你入门,当然,欢迎大佬指导

qq 672991841


VAPS XT入门教程15.05:DrawingIntegration机制
https://blog.jackeylea.com/vapsxt/qt-load-vapsxt-compiled-dll-under-windows/
作者
JackeyLea
发布于
2021年5月10日
许可协议