Qt如何编写一个含有事件循环,可以使用信号槽的动态库lib?

chenzhp 2019-03-04 03:01:08
目前我正在做一个android的项目,其中有部分解析的代码,我直接就将之前Qt项目的一些代码做成了一个lib库,提供给android这边通过jni调用。工作正常

但是,现在有一块代码用到了事件循环,信号槽这些。

通过Qt生成的的那个lib工程里面是没有main.cpp的,也就无法启动QApplication::exec()


请教各位大佬,这个有办法实现吗?
...全文
614 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
kerwin liu 2019-03-04
  • 打赏
  • 举报
回复
如果不是用到UI,你可以试着用回调函数(使用std::function)代替原来的信号槽。
类似如下:
typedef std::function<cv::Mat (const cv::Mat&mat)> Func;
Func m_func
template <typename T1>
void setImageProcessFunc(T1 memberFunc)
{
QWriteLocker lock(&m_lock);
m_func = std::bind(memberFunc,std::placeholders::_1);
}

16,817

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧