仅作为查找记录,大佬请跳过。
出现图像底部不在penal里的情况:
可能是——
MoveWindow(figure1, 0, 0, panel1.Width + 20, panel1.Height + 40, true);
——的原因
——————————————————————————————————
将其改为
MoveWindow(figure1, 0, 0, panel1.Width + 20, panel1.Height - 40, true);
图像下面便可以显示了:
但一放大主窗体,又看不到图像的x坐标了。。
关于 但一放大主窗体,又看不到图像的x坐标了。。 的解决:
后来发现代码里还有一项是设置窗体的功能——即对主窗体操作后,会改变嵌入的子图片的大小:
修改后:
运行结果:
放大后也是如此:
顿时感觉这一句话说的真对!感谢百度百科的这位大佬撰写者
传送门——MoveWindow
1、GetWindowLong
var style = GetWindowLong(figure1, GWL_STYLE);
//获取窗体原来的风格
2、SetWindowLong
SetWindowLong(figure1, GWL_STYLE, style & ~WS_CAPTION & ~WS_THICKFRAME);
//设置新风格,去掉标题,不能通过边框改变尺寸
3、MoveWindow
MoveWindow(figure1, 0, 0, panel1.Width + 20, panel1.Height + 40, true);
//移动到panel里合适的位置并重绘
4、
SetParent(figure1, panel1.Handle); //设置matlab图像窗体的父窗体为panel
传送门