表单中的控件自动缩放
控件的Anchor属性Anchor属性的意思,它有0-9十种值,各自代表的意思如下:
以下是我做测试的结果:
DH:表单高度的增量
DW:表单宽度的增量
测试过程:用代码把按钮的left和top各加80,长和高各加10后,再调整表单大小,再观察按钮的位置和大小
old值
oldtop=50
oldleft=50
oldheight=27
oldwidth=84
new值
newtop=130
newleft=130
newheight=37
newwidth=94
0:NULL
1:height和top变回old值,left和width为130和94(而且在再度移动按钮位置和改变大小前,再调整表单,按钮不再受影响)
2:和1相反,是left和width变回old值,height和top为37、130(而且在再度移动按钮位置和改变大小前,再调整表单,按钮不再受影响)
3:left、top、height、width都变为原来的值
4:height为oldheight,width、left为new值,top为oldtop+DH,即保持和表单底部的距离保持在设计阶段的值
5:top为oldtop,left、width为new值,height为oldheight+DH,即表单的高度增加多少,控件的高度也增加多少
6:left、width、height均为old值,只是height为oldheight+DH,即表单的高度增加多少,控件的高度也增加多少
7:top、left、widht均为OLD值,只是height为oldheight+DH,即表单的高度增加多少,控件的高度也增加多少
8:top、height均为new值,width就为old值,left就是oldleft+DW,就是控件保持和表单右边的距离不变
9:top、height、width均为old值,left就是oldleft+DW,就是控件保持和表单右边的距离不变
注意:它的十个可用的值要加起来用的,比如,现在我有一个Listview,我要让它在表单缩放时,Top和left保持不变,右边界和底部边界跟随表单一起缩放,那么就要用到Anchor中的四个值:
1——顶部绝对,即距表单顶部的距离保持不变;
2——左边绝对,即距表单左边的距离保持不变;
4——底部绝对,即距表单底部的距离保持不变;
8——右边绝对,即距表单右边的距离保持不变;
现在,把Listview的anchor设置为15(1+2+4+8),缩放表单时Listview就跟着自动缩放了。
注意这个功能只能在VFP9.0才有。其他版本可通过编程来实现。