C#とHalconの共同プログラミングHalconウィンドウに表示される画像をウィンドウコントロールのサイズに適合させる方法
次の図に示すように、HalconウィンドウコントロールhWindowControlをwinformフォームに追加します。コントロールに画像を表示する場合、画像は画像の一部のみを表示しますが、現在のウィンドウに完全に表示することはできません。 :(
左側はPictureBoxコントロールが表示され、右側はHalconウィンドウコントロールに表示されます)
解決策は次のとおりです。
定义窗口句柄的两步:
HTuple hWind;//hWind为窗口句柄
hWind = hWindowControl1.HalconWindow;//hWindowControl1为Halcon窗口控件的Name
HTuple Height, Width;
HObject ho_Image;
// 初始化本地和输出图片变量
HOperatorSet.GenEmptyObj(out ho_Image);
ho_Image.Dispose();
HOperatorSet.ReadImage(out ho_Image, "C:/Users/asus-pc/Desktop/images/Luka.jpeg");
HOperatorSet.GetImageSize(ho_Image, out Width, out Height);
//修改显示的图像部分,将图片的高度和宽度分别作为要显示部分的右下角的行高度和列宽度
HOperatorSet.SetPart(hWind, 0, 0, Height - 1, Width - 1);
HOperatorSet.DispObj(ho_Image, hWind);
演算子についてset_part:
set_part(:: WindowHandle、Row1、Column1、Row2、Column2
:) set_partは、ウィンドウに表示される画像の部分を変更します。その中で、WindowHandleはウィンドウハンドル、(Row1、Column1)は表示される画像部分の左上隅の行の高さと列の幅を表し、(Row2、Column2)は下部の行の高さと列の幅を表します。表示する画像部分の右隅。