Welcome

首页 / 软件开发 / VFP / 看实例学VFP:文本框控件

看实例学VFP:文本框控件2009-04-08 www.bianceng.cn 老马文本框控件(textbox)主要用于接收或显示数据,在vfp中是一个常用控件,差不多每个程序都要用到它。及中已经分别对文本框控件和数组做了介绍,本文来设计一个将这二者结合起来应用的例子。

关于文本框控件数据源的处理:

如果在表单中使用数据环境,可以在“数据环境设计器”中拖动表的各个字段到表单上,系统会自动生成各个字段对应的标签及文本框,并且文本框的数据源会自动与表中对应的字段绑定,这是一种处理方式;另外也可以不使用数据环境,先向表单添加文本框,然后在设计时或运行时在代码中为文本框赋数据源,本文就是这样的一个例子,运行界面如下 :

在上图中,对表单上的各个文本框控件的数据源等相关属性值采用了与在一例中类似的方式来处理,相关说明见代码中的注释。

制作步骤如下 :

一、新建表单,将其caption属性值设置为“编程入门网-文本框及数组的综合应用”,保存为“表单1.scx”。

二、向表单上添加三个label控件label1~label3,将它们的caption属性值依次设置为“编号”、“网站名称”和“网站网址”,并把这三个label控件排成一列。

三、向表单上添加三个文本框控件Text1~Text3,并把它们排成一列与label1~对应起来。

四、在表单下方添加四个命令按钮command1~command4,将它们的caption属性值依次设置为“第一条”、“上一条”、“下一条”和“最后一条”。

五、适当调整各控件的位置,调整后的表单设计器如下图:

六、添加事件代码:

1、表单的init事件代码:

set safety offuse 网站信息表copy to 结构 structure extended &&复制网站信息表的结构use 结构go topdime stru(3) &&定义数组do while !eof() select 结构for i=1 to 3mt1="text"+alltrim(str(I))thisform.&mt1..backstyle=0 &&将文本框的backstyle属性值均设为0thisform.&mt1..disabledForeColor=RGB(0,0,255) &&指定失效控件的前景色 thisform.&mt1..enabled=.f. &&将文本框的enabled属性值均设为.f.stru(I)=结构.field_name &&将"结构"表的field_name字段值依次赋给三个数组元素 skipendforenddouse 网站信息表for j=1 to 3sjy=alltrim("网站信息表."+stru(j))mt2="text"+alltrim(str(J))thisform.&mt2..controlsource=sjy &&依次为三个文本框控件赋数据源endfor
2、表单的unload事件代码:close data

3、“第一条”命令按钮command1的click事件代码:

if bof()=.f. go topendifthisform.refresh
4、“上一条”命令按钮command2的click事件代码:

if bof()=.f. skip -1endifthisform.refresh
5、“下一条”命令按钮command3的click事件代码:

if eof()=.f.skipendifthisform.refresh
6、“最后一条”命令按钮command4的click事件代码:

if eof()=.f. go bottomendifthisform.refresh
七、运行“表单1.scx”。

本例代码在Win2003+VFP6.0环境下调试通过。