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

DispObj问题

[复制链接]
李明 发表于 2022-3-2 09:51:19 | 显示全部楼层 |阅读模式
本帖最后由 李明 于 2022-3-2 15:39 编辑

在C++中的代码:
  1. HObject  ho_Circle, ho_Circle1, ho_RegionDifference;
  2. HTuple  hv_WindowHandle;
  3. SetWindowAttr("background_color","black");
  4. OpenWindow(10,10,400,400,0,"visible","",&hv_WindowHandle);
  5. HDevWindowStack::Push(hv_WindowHandle);

  6. GenCircle(&ho_Circle, 200, 200, 30);
  7. GenCircle(&ho_Circle1, 200, 200, 100);

  8. Difference(ho_Circle1, ho_Circle, &ho_RegionDifference);

  9. if (HDevWindowStack::IsOpen())
  10.       DispObj(ho_RegionDifference, HDevWindowStack::GetActive());
复制代码

我的问题 :ho_RegionDifference区域在窗口中没有显示  ??

奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
绝地武士 发表于 2022-3-2 10:24:47 | 显示全部楼层
如果你要使用它自带的窗口栈(HDevWindowStack)管理窗口,那么程序里面使用,你显示任何图形之前都是需要显式激活窗口(HDevWindowStack::SetActive(hv_WindowHandle) )。否则HDevWindowStack::GetActive()这句代码无法获取你当前有效的窗口,无法显示图形。

我的建议是,你把窗口句柄保存下来,直接使用,去掉以下这种频繁切换窗口的代码(这种适合于HDevelop里面使用):
  1. HDevWindowStack::Push(hv_WindowHandle);
  2. if (HDevWindowStack::IsOpen())
  3.     HDevWindowStack::GetActive(); // 把这个换成直接换成窗口句柄
复制代码

奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
 楼主| 李明 发表于 2022-3-2 14:32:13 | 显示全部楼层
本帖最后由 李明 于 2022-3-2 14:34 编辑
  1.     HObject  ho_Circle, ho_Circle1, ho_RegionDifference;
  2.     HTuple  hv_WindowHandle;
  3.     SetWindowAttr("background_color","black");
  4.     OpenWindow(10,10,400,400,0,"visible","",&hv_WindowHandle);
  5.     GenCircle(&ho_Circle, 200, 200, 30);
  6.     GenCircle(&ho_Circle1, 200, 200, 100);
  7.     Difference(ho_Circle1, ho_Circle, &ho_RegionDifference);
  8.     DispObj(ho_RegionDifference, hv_WindowHandle);
复制代码

这样窗口中还是没有显示区域  ??注意在halcon中可以显示,在C++中(qt5)中没有显示   ?
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
Criss 发表于 2022-3-3 09:07:04 | 显示全部楼层
李明 发表于 2022-3-2 14:32
这样窗口中还是没有显示区域  ??注意在halcon中可以显示,在C++中(qt5)中没有显示   ?
...

默认窗口是有很多属性没有设置,包括缓存大小,你可以先读取一张大图,然后设置颜色就可以了。
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
古月666 发表于 2023-7-11 17:09:41 | 显示全部楼层
大佬  这个问题解决了吗?  我也遇到了相同的问题, 显示不了
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
Ggg3434 发表于 2023-7-12 15:59:03 | 显示全部楼层
这个区域的差集有问题吧?
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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