【例1】若某表单中有一个文本框Text1和一个命令按钮组CommandGroup1,其中,命令按钮组包含了Command1和Command2两个命令按钮。如果要在命令按钮Command1的某个方法程序中访问文本框Text1的 Value属性值,下列句子中正确的是________。
(A)This.ThisForm.Text1.Value (B)This.Parent. Text1.Value
(C)Parent.Parent. Text1.Value (D)This.Parent. Parent.Text1.Value
(注:答案(D)属于相对引用方式,如果使用绝对引用方式,则应写为: Form1.Text1.Value)
【例2】 在表单中加入两个命令按钮Command1和Command2,编写Command1的Click事件代码如下,则当单击Command1后,________。
ThisForm. Parent. Command2.Enabled=.F.
(A)Command1命令按钮不能激活
(B)Command2命令按钮不能激活
(C)事件代码无法执行
(D)命令按钮组中的第二个按钮不能激活
(注:
1 ① 命令按钮的Enabled属性值为.F.时,该控件将以浅色显示,表示此按钮当前无效。
2 ② ThisForm. Parent. Command2.Enabled=.F.事件代码的功能实际将当前表单的父对象中的命令按钮Command2的Enabled属性值设置为.F.。答案(C)该事件代码无法执行,是因为对Command2对象的引用和描述不正确。
3 ③ 如果要使Command2命令按钮不能激活,正确的事件代码应为:
This. Parent. Command2.Enabled=.F.
即将当前对象(命令按钮Command1)的父对象(当前表单)中的Command2命令按钮的Enabled属性值设置为.F.。)
【例2】可选择不同字体的表单
操作步骤如下:
1. 1. 打开“表单设计器”或“MODIFY FORM……”
2. 2. 添加两个标签、一个文本框、一个选项按钮组、一个命令按钮,放在合适位置并调整其大小。
3. 3. 设置属性:
控件名称 属性名 设置值
Label1 Caption 请输入文本内容:
FontSize 18
AutoSize .T.
Label2 Caption 请选择字体:
AutoSize .T.
FontSize 18
Text1 FontBold .T. &&设定为粗体字
FontSize 26
ForeColor 0,0,255 &&设置文本为蓝色
Command1 Caption 关闭
注:有关颜色设置
RGB函数能返回一种颜色,它的格式为:
RGB(nRedValue,nGreenValue,nBlueValue)
其中3个参数分别表示颜色中含有红、绿、蓝的成分,范围都是0~255。
在属性窗口可以查看RGB参数。
4. 4. 设置选项按钮组Optiongroup1:右击——生成器——在“按钮”选项卡中设置按钮数为4,将
表格
关于规范使用各类表格的通知入职表格免费下载关于主播时间做一个表格详细英语字母大小写表格下载简历表格模板下载
标题列的4项标题分别设置为:“黑体”、“宋体”、“隶
书
关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf
”、“楷体”;在“布局”选项卡中设置4个按钮的适当间隔。
5. 5. Optiongroup1的Click事件代码:
Do case
Case this.value=1
thisform.text1.fontname="黑体"
case this.value=2
thisform.text1.fontname="宋体"
case this.value=3
thisform.text1.fontname="隶书"
case this.value=4
thisform.text1.fontname="楷体_GB2312"
Endcase
6. 6. Command1的Click事件代码:
THISFORM.RELEASE
注:上述Click事件代码也可以写成:RELEASE THISFORM
两种写法的区别在于:
THISFORM . RELEASE 是调用本表单的RELEASE方法程序,因此,THISFORM后面要加上引用格式中的点号; 而RELEASE THISFORM 中的RELEASE是VFP命令,因此,RELEASE后面不需要加上引用格式中的点号。
7. 7. 保存表单
8. 8. 运行表单
【例3】在表单上部设计一个向左移动的字幕(Visual FoxPro 6.0),在下部设计一个数字时钟。
操作步骤如下:
1. 1. 打开“表单设计器”或“MODIFY FORM……”
2. 2. 添加两个标签放在合适位置并调整其大小,再添加两个计时器。(计时器位置任意,在表单执行时见不到计时器)。
3. 3. 设置属性:
控件名称 属性名 设置值
Form1 Caption 移动字幕和时钟
Label1 Caption Visual FoxPro 6.0
AutoSize .T.
FontSize 18
BackStyle 0 &&使之透明
Label2 AutoSize .T.
FontSize 18
Timer1 Interval 200 &&为Label1移动周期
Timer2 Interval 1000 &&为Label2刷新周期
4. 4. Timer1的Timer事件代码:
IF THISFORM.Label1.Left+THISFORM.Label1.Width<0
THISFORM.Label1.Left=THISFORM.Label1.Width
ELSE
THISFORM.Label1.Left=THISFORM.Label1.Left-10
ENDIF
5. 5. Timer2的Timer事件代码:
IF THISFORM.Label2.Caption!=Time()
THISFORM.Label2.Caption=Time()
ENDIF
注:
① 计时器是一种周期性的按时间间隔自动执行其Timer事件代码的控件,它在应用程序中主要用于处理可能规律的、反复发生的动作。
② 在创建计时器时,它的位置可以任意摆放,因为在表单执行时是见不到计时器的,它属于不可见的控件。
③ 计时器的Interval属性用于设置Timer事件的触发时间间隔,单位为毫秒。
【例4】设计一个密码输入对话框,最多允许输入3次密码。
操作步骤如下:
1. 1. 打开“表单设计器”或“MODIFY FORM……”
2. 2. 添加一个标签、一个文本框,及两个命令按钮。放在合适位置并调整其大小。
3. 3. 设置属性:
Form1 Caption =DTOC(DATE()) &&函数按钮(fx)用于打开表达式生成器,供设置一个表达式,该表达式的值将作为属性值。对于用表达式设置的属性,在属性值之前会自动插入一个等号(=)。
Label1 Caption password:
Text1 PasswordChar *
Command1 Caption OK
Default .T. &&按回车键也可以
Command2 Caption Cancel
4. 4. Form1的Load事件代码:
Public I
I=0
5. 5. Command1的Click事件代码:
i=i+1 &&单击一次Command1就使i加1
IF i<=3
IF THISFORM.Text1.Value='4321'
MESSAGEBOX('Wellcome!') &&在消息框中显示的文本为"Wellcome!"
THISFORM.Release
ELSE
MESSAGEBOX('Wrong! Once Again!',3) &&该消息框有3个按钮
THISFORM.Text1.Value=''
THISFORM.Text1.SetFocus &&调用方法程序SetFocus
ENDIF
ELSE
MESSAGEBOX('STOP!') &&在消息框中显示的文本为"STOP!"
THISFORM.Release
ENDIF
6. 6. Command2的Click事件代码:
THISFORM.Release
【例5】设计一个有表格的表单,查看学生情况。
操作步骤如下:
1. 1. 打开“表单设计器”或“MODIFY FORM……”
2. 2. 添加一个表格和一个命令按钮。放在合适位置并调整到合适的大小。
3. 3. 设置“数据环境”,添入xsda表。
4. 4. 设置“表格”的属性:右键单击表格选择“表格生成器”,在“表格生成器”对话框中指定“表格项”、“样式”、“布局”等。
5. 5. “命令按钮”的属性(Caption:退出)、该表单的属性(Caption:学生基本情况表,Autocenter:.T.)
6. 6. 代码设计:双击“命令按钮”,在“Click”事件过程内键入“RELEASE THISFORM”
7. 7. 保存表单:.SCX文件
8. 8. 运行表单:菜单方法:“程序”→“运行”→注意选定“表单”类型,命令方式:DO FORM……
【例6】100到1000之间能被37整除的数
操作步骤如下:
1. 1. 打开“表单设计器”或“MODIFY FORM……”
2. 2. 添加一个标签、一个编辑框、两个命令按钮。放在合适位置并调整到合适的大小。
3. 3. 设置标签的属性:
控件名称 属性名 设置值
Lable1 Caption 100到1000之间能被37整除的数:
FontSize 16
AutoSize .T.
Edit1 FontSize 16
Command1 Caption 开始
FontSize 12
Command2 Caption 关闭
FontSize 12
4. 4. 双击“Command1”,在“Click”事件过程内键入:
for x=100 to 1000
if x%37=0
thisform.edit1.value=thisform.edit1.value+str(x,5)+chr(13)
endif
endfor
(注:① 以上程序中,chr(13)代表回车符,该行命令代码的功能是每写入一个符合条件的数值,就将编辑框中的文本换一行。
② 文本框中的内容可以是文本、数值等多种数据,而编辑框中的内容只能是文本数据。因此,要用str(x,5)进行转换。)
5. 5. 双击“命令按钮2”,在“Click”事件过程内键入“RELEASE THISFORM”
6. 6. 保存表单:.SCX文件
7. 7. 运行表单:……
【例7】设计一个日期与时间表单,只含一个文本框,逐次单击之,即可轮流显示日期或时间。
操作步骤如下:
1. 1. 在命令窗口执行“MODIFY FORM rqsj”命令;
2. 2. 从表单控件工具栏中拖入一个文本框,并调整其大小和位置;
3. 3. 设置各控件属性:
控件名称 属性名 设置值
Form1(表单) Caption 日期与时间
Text1(文本框) FontSize 28
BackStyle 0
4. 4. 编写表单的Load事件代码:
PUBLIC i && Load事件在表单装入内存时触发,设置I为公共变量
i=.T. && 变量I用于控制轮流显示
5. 5. 编写文本框的Click事件代码:
IF i=.T.
Thisform.Text1.Value=DATE() && 本表单的文本框的值设置为当前日期
Thisform.Text1.DateFormat=12 && 日期格式设置为年月日次序
Thisform.Text1.DateMark="." && 年月日间隔设置为点号
i=.F. && 触发Click事件I值就变反
ELSE
Thisform.Text1.Value=TIME() && 本表单的文本框的值设置为当前时间
i=.T. && 触发Click事件I值就变反
ENDIF
6. 6. 保存与运行该表单。
【例8】设计能选择3个数据表中的一个进行浏览或编辑的对话框。
操作步骤如下:
1. 1. 从表单控件工具栏拖入一个标签、一个单选按钮组、一个复选框和两个命令按钮。
2. 2. 在数据环境中加入学生表、分数、课程表三个数据表。
3. 3. 设置单选按钮组:右键单击之选“生成器”,在按钮选项卡中设置按钮数3,将表格标题列中的3项标题设定为:“学生表”、“分数”、“课程表”,在“布局”选项卡中设置按钮间隔。
4. 4. 其它控件属性设置:
控件名称 属性名 设置值
Form1 Caption 维护数据表
Label1 Caption 请选择要维护的数据表:
FontSize 16
AutoSize .T.
Check1 Caption 编辑
FontSize 12
Command1 Caption 确定
Default .T. && 回车键也可“确定”
FontSize 12
Command2 Caption \
1
SKIP -1
Else
GO bott
ENDIF
THISFORM.Refresh
CASE THIS.Value=2
IF RECN()
本文档为【vf表单设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。