IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> QT与Halcon联合编程环境配置【注意事项以及遇到的各种坑】 -> 正文阅读

[C++知识库]QT与Halcon联合编程环境配置【注意事项以及遇到的各种坑】

Tip.先说环境配置步骤,再说遇到的各种疑难杂症。

Section 1:按照需求编写Halcon代码并导出c++代码

1.Halcon代码导出为C++格式

首先halcon这边先导出C++代码备用,将编写完成的halcon代码导出。示例如下:

Section 2:QT Creator初始创建项目之后的配置

1.QT与halcon联合编程时要选择MSVC编译器版本,MinGW版本会出错【由于halcon自身的链接库就是由VS的编译器编译生成的】;QT初始创建MainWindow项目时先初步编译一下进而生成Debug文件夹,便于后面将halcon.dll与halconcpp.dll放入Debug文件夹中。

2.项目名称.pro下添加库文件[halcon安装目录下的include和lib文件夹]

?3.在Qt工程文件中添加几个主要的库文件就可以了,其他的用得到少,具体的可以参考其他文章

?

?

#-----------------------添加进.pro工程文件-----------------
#-----------------------QT与halcon联合编程配置-------------
 INCLUDEPATH   += $$PWD/include
 INCLUDEPATH   += $$PWD/include/halconcpp

LIBS += $$PWD/lib/x64-win64/halconcpp.lib
LIBS += $$PWD/lib/x64-win64/halcon.lib

4.mainwindow.h的头文件中包含halcon相关头文件与命名空间

?5.初步在ui中绘制一个简单界面【在此以下界面较简单只为演示作用】

?6.在halcon安装目录下,如图文件夹下,找到halcon.dll和halconcpp.dll两个文件,复制到项目.exe同级目录下(在Debug文件里面)

?7.至此程序编译应该就没有问题了,最后将Halcon中导出的C++代码引入进来即可。

?

?

//Function:打开文件并读图显示在窗口中
Hlong WindID = (Hlong)ui->gv_Main->winId ();
    if (HDevWindowStack::IsOpen())
      CloseWindow(HDevWindowStack::Pop());
    SetWindowAttr("background_color","black");
    OpenWindow(0,0,ui->gv_Main->width (),ui->gv_Main->height (),WindID,"visible","",&hv_WindowHandle);
    HDevWindowStack::Push(hv_WindowHandle);
    //主体函数
    QString path = QFileDialog::getOpenFileName(this,"Slect Image","","(*.png *.jpg)");
    if(path=="") return;
    ReadImage(&ho_Image, HTuple(path.toStdString().c_str()));
    GetImageSize(ho_Image, &hv_Width, &hv_Height);
    SetPart(hv_WindowHandle, 0, 0, hv_Height-1, hv_Width-1);
    DispObj(ho_Image, hv_WindowHandle);

8.最终示例程序显示效果图

=============================================================

Section 3:联合编程摸索过程中遇到的疑难杂症:

1.解决Qt5Core.dll丢失 / QT 在QTcreator之外点击exe文件运行时出现的‘dll缺失’,‘无法定位程序输入点’,‘(0xc000007b)’

★解决方案:设置环境变量,在系统环境变量中加入你所采用的QT编译器目录bin文件夹的路径。

?2.至此真的完结撒花了,以上确实是我所遇到的各种困难,如果有帮助到你,希望能给我个点赞支持。

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-04-06 15:59:31  更:2022-04-06 16:03:33 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 23:41:31-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码