设为首页收藏本站
授权版本:2024_07
开启左侧

[C#] 求助:关于C#+Halcon绘制可交互ROI的几个问题

[复制链接]
SummerQ 发表于 2024-5-25 09:49:39 | 显示全部楼层 |阅读模式
本帖最后由 SummerQ 于 2024-5-25 15:22 编辑

// Winform .NET Framework 4.8
问题1:
  1. HOperatorSet.DispObj(HImage, HWindow);
  2. HDrawingObject hDrawingObject = new HDrawingObject();
  3. hDrawingObject.CreateDrawingObjectRectangle2(100, 100, 0, 30, 10);
  4. HWindow.AttachDrawingObjectToWindow(hDrawingObject);
复制代码
  1. private void HWindowControl_HMouseDown(object sender, HMouseEventArgs e)
  2. {
  3.     HWindowControl.Cursor = Cursors.Hand;
  4. }
复制代码
鼠标单击图片不松开,会自动触发HWindowControl的MouseLeave事件(表现:Cursor从hand自动转为arrow),此时未触发HMouseUp事件
但是双击图片不松开,就正常了

问题2:
  1. HOperatorSet.DispObj(HImage, HWindow);
  2. HDrawingObject hDrawingObject = new HDrawingObject();
  3. hDrawingObject.CreateDrawingObjectRectangle2(100, 100, 0, 30, 10);
  4. HWindow.AttachDrawingObjectToWindow(hDrawingObject);
  5. hDrawingObject.OnSelect(CallbackOnSelect);//注册事件

  6. private void CallbackOnSelect(HDrawingObject drawid, HWindow window, string type)
  7. {
  8.     hDrawingObject.SetDrawingObjectParams("color", "green");
  9. }
复制代码

为什么单击ROI进行拖拽时不会调用该回调函数,需要双击ROI,颜色才发生变化?


奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
lsy001 发表于 2024-5-27 17:12:33 | 显示全部楼层
为什么单击ROI进行拖拽时不会调用该回调函数,需要双击ROI,颜色才发生变化?
这个我试了一下,跟你的一样,如果只有一个ROI,需要双击;但是如果有两个ROI对象,当你切换他们的时候,单击就可以了
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表