主题:ScaleLeft,ScaleTop,ScaleWidth,ScaleHeight这几个的区别
wulei0301
[专家分:0] 发布于 2010-11-03 21:56:00
那位朋友能详细介绍一下:ScaleLeft,ScaleTop,ScaleWidth,ScaleHeight,Left,Top,Width,Height之间的区别么。
回复列表 (共3个回复)
沙发
wdkshp [专家分:5490] 发布于 2010-11-04 20:30:00
scaeleft、scaletop、scalewidth、scaleheight属性是用来创建自定义刻度(设定刻度、获取有关坐标系当前刻度的详细信息),scaeleft、scaletop用于设置(或获取)左上角的水平坐标和垂置坐标(不直接改变窗体的大小和位置,只是将原点的位置作相应的改变,类似于解析几何里的坐标平移的概念);scalewidth、scaleheight属性是根据绘图区的当前宽度和高度来定义单位(表示对象可用空间的大小)
板凳
一江秋水 [专家分:9680] 发布于 2010-11-04 20:33:00
ScaleLeft、ScaleTop是用户自定义的对象左上角坐标,ScaleWidth,ScaleHeight是用户自定义的对象内部宽、高度。
Left、Top是对象左上角在容器中的坐标,Width、Height是对象的物理宽、高度。
在物理宽高不变的情况下,用户可以任意自定义内部宽高度,所谓内部宽高是窗体除去边框厚度以后实际可以绘图的宽高区域。例如:
left=100:top=50:width=1000:height=800
ScaleLeft=50:ScaleTop=150:ScaleWidth=300:ScaleHeight=600
这表示:
窗体左上角在屏幕(屏幕是容器)上的坐标是100,50,窗体的物理宽高为1000*800。
窗体内部左上角坐标不是默认的0,0,而是50,150,窗体内部宽高分别为300和600个单位。
你也可以这样理解:
有一张1000*800的纸,你把它的宽分为300等分,把它的高分为600等分。这张纸左上角的坐标是从50,150开始的,那么这张纸的右下角坐标是50+300=350,150+600=750
3 楼
wulei0301 [专家分:0] 发布于 2010-11-04 21:35:00
谢谢,我 已经明白了!
我来回复