首页 > 其他分享 >Halcon 学习笔记(2):Halcon+WPF导入

Halcon 学习笔记(2):Halcon+WPF导入

时间:2024-07-08 09:00:19浏览次数:13  
标签:core dialog 8.0 Halcon 导入 file WPF net

目录

前言

这里补充一下Halcon导入到WPF的要求

.net core 8.0

Halcon是支持.net core 8.0导入的

.net core 8.0新功能,打开文件夹和打开文件

[RelayCommand]
public void SelectFile()
{
    MsgHelper.Info("选择文件路径");
    var dialog = new Microsoft.Win32.OpenFileDialog();
    dialog.Title = "选择文件路径"; // Default file name

    // Show open file dialog box
    bool? result = dialog.ShowDialog();

    // Process open file dialog box results
    if (result == true)
    {
        // Open document
        string filename = dialog.FileName;
        MsgHelper.Success($"选择文件路径:{filename}");
    }
}

[RelayCommand]
public void SelectFolder()
{
    MsgHelper.Info("选择文件夹路径");
    var dialog = new Microsoft.Win32.OpenFolderDialog();
    dialog.Title = "选择文件夹路径"; // Default file name

    // Show open file dialog box
    bool? result = dialog.ShowDialog();

    // Process open file dialog box results
    if (result == true)
    {
        // Open document
        string filename = dialog.FolderName;
        MsgHelper.Success($"选择文件路径:{filename}");
    }
}

HSmartWindowControlWPF

System.Drawing.Common

Halcon需要系统绘制DLL,需要nuget库导入

重置拉伸

        [RelayCommand]
        public void ReadImg()
        {
            var imageUrl = "D:/workspace/program/Halcon/Images/A.png";
            MsgHelper.Info($"读取图片,图片路径{imageUrl}");
            HImage.ReadImage(imageUrl);
            HSmart.HalconWindow.DispObj(HImage);
            //图片适应阶段
            HSmart.SetFullImagePart();
        }

关闭拖拽和缩放

<!--为了防止拖拽和缩放,这里可以关掉-->
<halcon:HSmartWindowControlWPF Grid.Row="1"
                               x:Name="HSmart"
                               HMoveContent="False"
                               HZoomContent="Off"
                               HDoubleClickToFitContent="False" />

文件导出

  • HOperatorSet.WriteImage:图片导出
  • HOperatorSet.WriteShapeModel:模板导出

标签:core,dialog,8.0,Halcon,导入,file,WPF,net
From: https://www.cnblogs.com/gclove2000/p/18287944

相关文章

  • Apifox 6月更新|定时任务、内网自部署服务器运行接口定时导入、数据库 SSH 隧道连接
    Apifox新版本上线啦!!! 看看本次版本更新主要涵盖的重点内容,有没有你所关注的功能特性:自动化测试支持设置「定时任务」 支持内网自部署服务器运行「定时导入」数据库均支持通过SSH隧道连接自动化测试数据库操作优化 将Apifox更新至最新版,一起开启全新体验......
  • Simple WPF: WPF 自定义按钮外形
    最新内容优先发布于个人博客:小虎技术分享站,随后逐步搬运到博客园。WPF的按钮提供了Template模板,可以通过修改Template模板中的内容对按钮的样式进行自定义,完整代码Github自取。使用Style定义扁平化的按钮样式定义一个ButtonStyleDictonary.xaml资源字典文件,在ControlTemplate......
  • Matlab之App Designer 如何导入Excel参数教程
    一、背景介绍    采用Matlab中的AppDesigner进行GUI可视界面程序设计时,经常需要将数据导入到程序中进行运算和分析,以提升效率,本文将对导入Excel参数的方法及程序实现进行介,。二、采用MatlabAppDesigner导入Excel参数方法及代码1、首先打开一个新的AppDesigner页......
  • WPF Behavior InvokeCommandAction Command CommandParameter
    //xaml<behavior:Interaction.Triggers><behavior:EventTriggerEventName="MouseWheel"SourceObject="{BindingElementName=img}"><behavior:InvokeCommandActionCommand="{BindingMouseWheelCmd}"......
  • 硬件开发笔记(二十三):贴片电阻的类别、封装介绍,AD21导入贴片电阻原理图封装库3D模型
    前言  电阻,电容,电感还有各种基础的电子元器件、连接器和IC构成了各种实现功能的电子电路。  本篇介绍贴片电阻,并将贴片电阻封装导入AD21,预览其三维模型。 贴片电阻    贴片电阻(SMDResistor)作为一种不可或缺的电子元件,广泛应用于各种电路和设备中。其体积......
  • WPF常见控件(包含materialDesign)与属性
    materialDesign:ColorZone:用于在应用界面中创建有色区域,增加层级感和视觉吸引力。materialDesign:DrawerHost:用于实现从屏幕一侧滑出的抽屉控件,经常与materialDesign:DrawerHost.LeftDrawerContent配套使用(这里的例子是设置左抽屉)。DockPanel:布局控件,用于将其子元素排列在特......
  • WPF single instance via mutex
    usingSystem;usingSystem.Collections.Generic;usingSystem.Configuration;usingSystem.Data;usingSystem.Diagnostics.Eventing.Reader;usingSystem.Linq;usingSystem.Runtime.InteropServices;usingSystem.Threading;usingSystem.Threading.Tasks;usingS......
  • Vite按需导入element-plus组件和icon
    Vue3-Vite项目中使用element-plus,按需导入element-plus组件和el-icon,以及自动导入Vue相关函数。如果你对打包后的文件大小不是很在乎,那么使用完整导入会更方便。配置也更加简单,可以直接参考element-plus的官网。安装依赖npmielement-plus@element-plus/icons-vuenpmiunpl......
  • WPF MenuItem behavior MVVM
    //xaml<ImageGrid.Column="1"ClipToBounds="True"Source="{BindingSelectedItem.ImgUrl,ElementName=lbx}"><Image.ContextMenu><ContextMenu><MenuItemHeader="S......
  • WPF MVVM capture window keyboard
    //xaml<behavior:Interaction.Triggers><behavior:EventTriggerEventName="KeyDown"><behavior:CallMethodActionTargetObject="{Binding}"MethodName="Window_KeyDown"/></beha......