VB中有控件数组,使用它可以批量设置控件的属性,这个东西最直接的作用就是可以简化代码。今天我们在vfp中模拟VB控件数组,操作vfp中最基本的控件之一:标签控件(label)。在vfp基础教程-标签控件(label)一文中对该控件的属性及用途等已经有比较详尽地描述,关于它实在是没有什么好说的了。
本文设计的这个例子是这样的:在表单激活时(Activate事件),采用类似vb控件数组的处理方式在循环语句中为各个标签设置属性,如下图1;在命令按钮的click事件中,通过单击将5个标签的caption属性值依次显示出来,如下图2;
图1
图2
制作步骤如下:
一、新建表单,将其AutoCenter属性值设置为.t.,保存为“表单1.scx”。
二、向表单上添加5个标签控件label1~label5,将它们的caption属性值依次设置为“编”、“程”、“入”、“门”、“网”。
三、向表单上添加一个命令按钮command1,将其caption属性值设置为“显示字符”。
四、适当调整各控件的位置,如下图:
五、添加事件代码:
1、表单的Activate事件代码:
public top,n local fs,fb,fc n=1 top=thisform.label1.top for i=1 to 5 t="label"+str(i,1)+".top" fs="label"+str(i,1)+".fontsize" fb="label"+str(i,1)+".fontbold" fc="label"+str(i,1)+".forecolor" thisform.&t=-50 &&依次把5个标签的top属性值设为-50,实际是把它们隐藏起来 thisform.&fs=12 &&依次把5个标签的fontsize属性值设为12 thisform.&fb=.t. &&依次把5个标签的fontbold属性值设为.t. thisform.&fc=rgb(255,0,0) &&依次把5个标签的forecolor属性值设为rgb(255,0,0) endfor
2、命令按钮command1的click事件代码:
t="label"+str(n,1)+".top" if thisform.&t<=top-50 thisform.&t=top n=n+1 if n=6 n=1 this.enabled=.f. messagebox("字符已经全部显示完毕!") return endif endif
六、运行“表单1.scx”。
本例代码在Win2003+VFP6.0环境下调试通过。
查看全套“菜鸟也学VFP”教程
版权与免责声明
1、本站所发布的文章仅供技术交流参考,本站不主张将其做为决策的依据,浏览者可自愿选择采信与否,本站不对因采信这些信息所产生的任何问题负责。
2、本站部分文章来源于网络,其版权为原权利人所有。由于来源之故,有的文章未能获得作者姓名,署“未知”或“佚名”。对于这些文章,有知悉作者姓名的请告知本站,以便及时署名。如果作者要求删除,我们将予以删除。除此之外本站不再承担其它责任。
3、本站部分文章来源于本站原创,本站拥有所有权利。
4、如对本站发布的信息有异议,请联系我们,经本站确认后,将在三个工作日内做出修改或删除处理。
请参阅权责声明!