Halcon HSmartWindowControl初识

本文介绍了如何在C#的WPF环境中利用Halcon的HSmartWindowControl控件进行图像显示和交互操作。通过新建WPF项目,添加Halcon库引用,设置控件属性,实现图像的缩放、拖拽和自适应显示。在程序执行中,展示了HSmartWindowControl的各种交互功能,如滚轮缩放、双击适应和鼠标拖动。注意,需确保项目配置为64位以避免运行错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

应用背景概述

Halcon的新版本中增加了HSmartWindowControl控件,该控件可以很方便的实现图像的缩放、拖拽、及自适应显示,本文通过C#的WPF来说明该控件的使用。

本案例应用环境为Win10 64位+VS2017 Community版+Halcon18。

1.新建WPF工程

新建WPF项目,这里我们将项目命名为"WPFHalconSmartBasic"
在这里插入图片描述

2.添加Halcon库函数的应用

2.1在解决方案管理器中添加引用

在“解决方案管理器”中添加引用

2.2在随后弹出的"引用管理器对话框"中点击"浏览"

在这里插入图片描述

2.3找到Halcon的安装目录选择\bin\dotnet35\halcondotnet.dll并添加

在这里插入图片描述

2.4在工具箱中添加Halcon控件

在工具箱处右击选中“选择项”,在弹框中选中WPF分页,单击“浏览”选择打开Halcon安装目录选择\bin\dotnet35\halcondotnet.dll并打开。
在这里插入图片描述

3添加控件

在XAML栏修改添加如下代码
在这里插入图片描述
添加HSmartWindowControlWPF控件的Loaded事件函数,增加图片读取函数
在这里插入图片描述

// Loaded响应函数
private void HswControl_Loaded(object sender, RoutedEventArgs e)
{
	HImage image = new HImage();
	image.ReadImage("E:\\2.bmp");
	hswControl.HalconWindow.DispImage(image);
}

注:如果通过不添加Loaded事件响应函数来执行图片的导入而直接放在窗体的构造函数后程序执行时将报错。同时有些人喜欢用HOperatorSet这个类来完成操作,个人觉得这种方式没有层次感,而且官方也不推荐在正常情况下使用这种方式
在这里插入图片描述
另外由于Halcon选用的时64位系统的授权,需要在解决方案属性->生成->平台目标->修改为X64,否则运行时将报错
在这里插入图片描述

在这里插入图片描述

4.程序执行

运行程序后,程序界面如下。
在控件上通过鼠标滚轮可以改变图片显示比例;
双击控件可以实现图片的自适应显示;
按住鼠标左键可以实现图像的移动;
这些属性可以通过对控件的设置来完成他们的启用与禁用
在这里插入图片描述

<HalconDotNet:HSmartWindowControlWPF Name="hswControl" HDoubleClickToFitContent="True"  HMoveContent="True" HZoomContent="Off" Grid.Column="0" Grid.Row="0" Margin="2" Loaded="HswControl_Loaded" />

其中HDoubleClickToFitContent,HMoveContent,HZoomContent分别代表控件的双击自适应,图像拖拽及滚轮缩放的属性,也可以通过后台代码做相应的启用或禁用

5.后续

使用HSmartWindowControl控件虽然有诸多便利,但是该控件不支持传统HWindowControl的Draw_*函数,要想在该控件上实现ROI图形区域的绘制需要通过其他方式,这块后续文章中再讲述。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值