通用视觉工具模块-直接阈值分割模块-2-UI设计

📅 2026/6/18 11:36:39
通用视觉工具模块-直接阈值分割模块-2-UI设计
通用视觉工具模块-直接阈值分割模块-2-UI设计一 链接图像xmlns:vmclr-namespace:Plugin.Threshold.ViewModelsUIBorder Grid.Row0ExpanderHeader图像链接IsExpandedTrueStackPanelHorizontalAlignmentCenterStackPanelOrientationHorizontalMargin5 0TextBlockText输入图像HorizontalAlignmentCenterVerticalAlignmentCenter/TextBoxHorizontalAlignmentCenterVerticalAlignmentCenterBorderThickness0 0 0 1Width200Margin5 0IsReadOnlyTrueStyle{StaticResource LinkTextBox}Text{Binding InputImageLinkText}mah:TextBoxHelper.LinkButtonCommand{Binding LinkCommand,ModeOneWay}mah:TextBoxHelper.LinkButtonCommandParameter{x:Static vm:eLinkCommand.InputImageLink}//StackPanel/StackPanel/Expander/Border后端publicenumeLinkCommand{InputImageLink,}privatestring_InputImageLinkText;/// summary/// 输入图像链接文本/// /summarypublicstringInputImageLinkText{get{return_InputImageLinkText;}set{Set(ref_InputImageLinkText,value);}}halcon显示控件加载[NonSerialized]privateRImage_DispImage;publicRImageDispImage{get{return_DispImage;}set{_DispImagevalue;}}/// summary/// 加载函数/// /summarypublicoverridevoidLoaded(){base.Loaded();varviewModuleViewasThresholdView;if(view!null){ClosedViewtrue;// 加载halcon显示控件if(view.mWindowHnull){view.mWindowHnewVMHWindowControl();view.winFormHost.Childview.mWindowH;}// 二次打开复原操作if(DispImage!nullDispImage.IsInitialized()){// ShowHRoi();}}}显示图像/// summary/// 参数变化回调函数/// /summary/// param nameobj/paramprivatevoidOnVarChanged(VarChangedEventParamModelobj){switch(obj.SendName.Split(,)[1]){caseInputImageLink:InputImageLinkTextobj.LinkName;// 获取图像到全局变量并显示图像GetDispImage(InputImageLinkText,true);break;default:break;}}二 阈值参数设置UIBorder Grid.Row1GroupBoxHeader阈值分割参数Grid.Row1StackPanelOrientationVerticalMargin5 0StackPanelOrientationHorizontalMargin10 8TextBlockText开始:VerticalAlignmentCenterHorizontalAlignmentCenterWidth90/mah:NumericUpDownWidth200BorderThickness0 0 0 1Value{Binding StartThre}//StackPanelStackPanelOrientationHorizontalMargin10 8TextBlockText结束:VerticalAlignmentCenterHorizontalAlignmentCenterWidth90/mah:NumericUpDownWidth200BorderThickness0 0 0 1Value{Binding EndThre}//StackPanel/StackPanel/GroupBox/Border后端privateint_StartThre128;/// summary/// 起始阈值/// /summarypublicintStartThre{get{return_StartThre;}set{Set(ref_StartThre,value);}}privateint_EndThre255;/// summary/// 结束阈值/// /summarypublicintEndtThre{get{return_EndThre;}set{Set(ref_EndThre,value);}}