VB对象的Width Height和ScaleWidth,ScaleHeight属性有何区别?

来源:百度知道 编辑:UC知道 时间:2024/06/05 15:58:56
学习VB近一个月了,就是弄不明白这几个属性之间的区别
对一个窗体来说,如果自定义坐标系,ScaleWidth与ScaleHeight该如何计算,ScaleWidth,ScaleHeight是否分别等于x2-x1,y2-y1((x1,y1),(x2,y2)分别是窗体工作去左上角和右下角的坐标)?

Picture控件既没边框又没标题栏
Width,Height为什么就不等于ScaleWidth和ScaleHeight?

为什么在Picture属性里修改了的ScaleHeight与ScaleWidth属性值,在窗体里却看不到Picture框的大小的变化呢?
期待高人指点。

楼上正确,但怕你不明白。说简单点就是:
Width与Height就是控件外在的宽度和高度,是外在坐标系里的宽度和高度。
ScaleWidth,ScaleHeight是控件内部坐标的宽度和高度。
比如Picture控件在form1里,那么他的Width与Height是与form1的ScaleWidth,ScaleHeight的设置相关的,是成比例的,如果它的Width=form1.ScaleWidth就与form1等宽;改变Picture的ScaleWidth,ScaleHeight不会影响Width与Height,Picture的ScaleWidth,ScaleHeight与Width与Height无关。

Width与Height,与所在的容器的ScaleMode有关,是该对象的宽度与高度(包括标题栏),也就是该对象在所在容器中,显示的大小

而scaleWidth 与ScaleHeight,与对象本身的ScaleMode有关,是这个对象可编辑区的宽度与高度(不包括标题栏,及3d边框的边界部分)

ScaleWidth,ScaleHeight是否分别等于x2-x1,y2-y1((x1,y1),(x2,y2)分别是窗体工作去左上角和右下角的坐标)?
是这样的