NAVER_ 2020-02-14 15:06 采纳率: 0%
浏览 684

halcon与mfc混合编程中怎样在picture control中显示不同的图片?还有图片被halcon处理后,显示结束后,如何清空窗口。

使用halcon将图片读取,并显示在picture control上后再次读取第二张图片时仍然显示第一张图片

void Ct5Dlg::OnBnClickedButton2()
{

// TODO: 在此添加控件通知处理程序代码
CString path;
CString filter;
filter = "Picture Files (*.bmp *.jpg)|*bmp;;*jpg||";
CFileDialog readfileDlg(TRUE, NULL, NULL, OFN_HIDEREADONLY, filter);//构造文件对话框对象
if (IDOK == readfileDlg.DoModal()) //当点击确定按钮时候,会记录文件路径
{
    path = readfileDlg.GetPathName();
}
else
{
    return;
}
//通过readfileDlg.GetPathName()获得的文件路径是CString类型,而Halcon中的read_image需要的类型为HTuple涉及到数据转换
CStringA StrTemp(path);
hv_picfile = (LPSTR)StrTemp.GetBuffer();

ReadImage(&ho_Image, hv_picfile);       //读取文件

HWND hwnd1;
CRect rect;
GetDlgItem(IDC_PIC)->GetWindowRect(&rect);  //获取控件尺寸
hwnd1 = GetDlgItem(IDC_PIC)->m_hWnd;
//HLONG lWWindowID=(HLONG)m_hWnd;
LONG lWindowID = (LONG)hwnd1;

OpenWindow(0, 0, rect.Width(), rect.Height(), lWindowID, "", "", &hv_WindowHandle);
HDevWindowStack::Push(hv_WindowHandle);
if (HDevWindowStack::IsOpen())
    DispObj(ho_Image, HDevWindowStack::GetActive());

}


  • 写回答

1条回答 默认 最新

  • 风来浪也白头_ 2021-11-29 17:10
    关注

    加一啊,我也是,重新定义显示窗口Halcon还报错了

    评论

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料