前言
写在前面:关于使用halcon和C++联合编程,并不是什么新鲜事情,但对于新手来说还是会遇到各种各样的问题,归根结底还是对C++的掌握不够熟练,在此记录下学习的过程,水平有限,还请多多指教。
1、加载图片
使用MFC的picture control控件以及halcon加载一个图片,开发过程中遇到的一个最大的问题:
1.编译成功且图片资源成功加载,但是无法显示
1.1、代码片段
对话框准备(不需要绑定变量,使用默认的ID和设置即可):
直接上代码:
补充:必须要在类内定义窗口变量HWindowID和m_HWindowID否则后续无法加载窗口
//类内定义窗口变量
HTuple m_HWindowID, HWindowID;
在OnInitDialog()中定义并初始化窗口
起初尝试在按钮时间函数中定义窗口,编译成功而且图片也可以加载,但是却看不到图片,后来经过搜索发现在窗口初始化时加载一个空的窗口即可
//在OnInitDialog()中定义并初始化窗口
CRect Rect;
CWnd* pWnd = GetDlgItem(IDC_STATIC);
HWindowID = (Hlong)pWnd->m_hWnd;//获取父窗口句柄
pWnd->GetWindowRect(&Rect);
OpenWindow(0, 0, Rect.Width(), Rect.Height(), HWindowID, "visible", "", &m_HWindowID);
int w = Rect.Width();
初始化一个新的空窗口:
//下面是按钮事件的相应函数
bool clicked = false;
void CDlg::OnBnClickedButton1