没有合适的资源?快使用搜索试试~ 我知道了~
vfp 复习资料 适合在校大学生为计算机2级做准备
需积分: 9 15 下载量 151 浏览量
2009-11-15
09:04:54
上传
评论 1
收藏 1020KB DOC 举报
温馨提示
试读
56页
在校大学生计算机2级复习的首选材料 第八章 基本控件应用 〖知识要求〗 通过本章的学习,使读者基本掌握标签、文本框、命令按钮、编辑框、计时器等基本控件的常用属性、事件和方法程序,并能编制具有基本实用功能的表单程序。 在应用程序中使用控件可以提高人机交互能力。通过在表单的控件上键入、单击以及在控件之间移动,用户可以操作数据,完成多种任务。 在表单中可以有两类控件:与表中数据绑定的控件和不与数据绑定的控件。对于第一类控件,用户在控件中输入或选择的值只是作为属性值保存。在控件的生存期之后,这个值并不保存到磁盘上,也不保存到内存变量中。本章重点介绍非绑定型控件,绑定型控件在第十章介绍,需要说明的是某些控件同时具备这两种功能。 表单的绝大部分功能可以归纳为以下几类: • 为用户提供一组预先设定的选择 • 接受不能预先设定的用户输入 • 在指定范围内接受用户输入
资源推荐
资源详情
资源评论
第八章 基本控件应用
〖知识要求〗
通过本章的学习,使读者基本掌握标签、文本框、命令按钮、编辑框、计时器等基本控件的常用属性、事
件和方法程序,并能编制具有基本实用功能的表单程序。
在应用程序中使用控件可以提高人机交互能力。通过在表单的控件上键入、单击以及在控件之间移动,用
户可以操作数据,完成多种任务。
在表单中可以有两类控件:与表中数据绑定的控件和不与数据绑定的控件。对于第一类控件,用户在控件
中输入或选择的值只是作为属性值保存。在控件的生存期之后,这个值并不保存到磁盘上,也不保存到内存变
量中。本章重点介绍非绑定型控件,绑定型控件在第十章介绍,需要说明的是某些控件同时具备这两种功能。
表单的绝大部分功能可以归纳为以下几类:
为用户提供一组预先设定的选择
接受不能预先设定的用户输入
在指定范围内接受用户输入
允许用户执行特定的命令
在给定的时间间隔内执行特定的命令
显示信息
本章从控件的使用频率、由浅入深的顺序介绍各类控件,请读者根据上述内容,分析总结各类控件所属的
功能。
§8.1 标签
一、标签功能说明
完美程序设计的原则之一是使有关信息可视化。标签( Label)用于显示文本和信息,主要功能:1、显示
应用程序的提示信息;2、显示应用程序的运行结果。
二、标签常用属性说明
标签最常用的属性包括:
1.Caption:指定标签显示的文本,标签的显示功能由此属性实现,最多允许显示 256 个字符;
2.Visible:指定标签是否可见,逻辑值,默认逻辑真(.T.),利用此属性可以令标签动态地显示信息。
下面五个属性用于标签与字体有关属性的设置:
3.ForeColor:指定标签中文本的颜色;
4.FontSize:指定标签中文本的字号大小;
5.FontName:指定标签中文本的字体;
6.FontBold:指定标签中文本是否加粗,逻辑值,默认.F.;
7.Alignment:指定文本在标签中的对齐方式:0-左 1-右 2-居中。
下面两个属性和标签的背景设置有关:
8.BackStyle:指定标签的背景是否透明:0-透明,可看到标签后面的东西;1-不透明;
9.BackColor:指定文本(或图形)的背景色,如果对象的 BackStyle 属性值设置为 0,即该对象的背景是
透明的,那么设置的背景色无效。
那么如何设置字体或背景是蓝色、绿色或红色呢?这时需要使用调色板函数,即 RGB()函数。大家知道,
各种颜色可以由三基色,即红(R)、绿( G)和蓝(B)色调出。RGB()函数有三个自变量,都是数值型,
分别用于设置三基色的数量值,取值范围都是 0~255。例如下面代码:
thisform.label1.forecolor=rgb(255,0,0) && 设置标签字体为红色
thisform.label1.forecolor=rgb(0,255,0) && 设置标签字体为绿色
thisform.label1.forecolor=rgb(0,0,255) && 设置标签字体为蓝色
关于函数 RGB()的使用可以参见例 8.4 和例 8.5。
下面四个属性用于标签大小和标签在表单上的位置设置:
10.Left:指定对象(标签)左边界与其父对象(表单)左边界的距离;
11.Top:指定对象(标签)的顶边与其父对象(表单)顶边的距离;
12.Width:指定对象(标签)的宽度;
13.Height:指定对象(标签)的高度。
下面两个属性可以用于指定标签文本的排列显示方式:
14.AutoSize:指定标签大小是否可随其文本的大小长度而改变,逻辑值,默认逻辑假(.F.);有些时候,
为标签设置的文本内容较长或标签字体较大时,如果标签本身较小,部分字体内容会无法正常显示,此时可以
利用 AutoSize 属性将其设置为逻辑真(.T.),那么标签的大小会自动与其显示的文本匹配。
15.WordWrap:指定标签文本能否根据标签边界自动换行,逻辑值,默认逻辑假(.F.);利用此属性可以
令标签显示的中文文本竖向排列。
下面的属性可以指定标签是否响应用户事件:
16.Enabled:指定对象(标签)是否响应用户触发的事件,逻辑值,默认逻辑真(.T.)。
三、标签程序设计
例 8.1:编制一个表单,在表单上有一个标签控件,鼠标单击该标签后,标签可以在表单上左右来回移动。
表单设计和运行界面如图 8-1 所示。
图 8-1 例 8.1 表单设计和运行界面
题目分析和解答:
(1) 建立一个表单并在表单中添加控件:一个标签。
(2) 先设计表单初始运行界面,表单 Form1 的 Init 事件代码为:
thisform. label1. caption="大家好"
thisform. label1. fontname="楷体_gb2312"
thisform. label1. fontsize=16
thisform. label1. fontbold=.t.
thisform. label1. forecolor=rgb(255,0,0)
thisform. label1. alignment=2
thisform. caption="欢迎窗口"
(3) 和字幕移动相关的代码,即标签 label1 的 Click 事件代码:
do while .t.
thisform.label1.left=0
for i=thisform.label1.left to thisform.width-thisform.label1.width
this.left=i
&&=inkey(1)
endf
enddo
请思考此程序如何终止。
§8. 2 文本框
一、文本框功能说明
1.用于接收、修改和输出数据,尤其接收预先不能确定的输入,相当于人机对话命令 Accept(或
Input,Wait)。需要说明的是文本框主要用于输入文本较少的情况,它一般是在一行中显示数据,如果输入文
本内容较多,应该用编辑框控件。
2.检验文本框中的数据是否有效:在其 Valid 事件代码中写进相应程序,如果值无效,则返回逻辑假
(.F.)。
3.数据绑定:用于显示或编辑表中非备注、非通用字段的数据。
本章重点介绍前两个功能,数据绑定功能参见第十章。
文本框与标签的区别在于文本框可以绑定数据源、可以直接编辑、能用 tab 键选择而标签均不能够。
二、文本框常用属性、事件和方法程序说明
文本框最常用的属性是:
1.Value:利用此属性引用和更改文本框中的文本,最常用的为此属性赋值的方法与 Accept 等人机对话命
令非常相似;此属性默认的数据类型为字符型,可以通过为该属性赋初值来修改此属性的数据类型。
如果需要在文本框中接收用户的口令或密码,但在屏幕上不显示实际输入值,那么需要设置属性:
2.PassWordChar:假设该属性设置为“*”,那么文本框的内容以该属性值显示,但 Value 属性的实际内容
并没有变化。
如果文本框中的文本是只读,不能修改,那么需要设置属性:
3.ReadOnly:指定是否只读,逻辑值,默认逻辑假(.F.),即默认文本框中的文本可以修改。
如果需要将文本框与表中字段绑定,那么需要设置属性:
4.ControlSource:指定与文本框绑定的数据源,此时显示在文本框中的值将保存在文本框的 Value 属性中,
同时保存在 ControlSource 属性指定的字段中。
如果文本框中的数据是日期型,那么可以设置属性:
5.DateFormat:该属性为用户提供了十五种日期格式的选择,例如美语、中文日期格式等。
如果希望提高文本框数据的输入效率,可以设置属性:
6.SelectOnEntry:该属性指定当文本框得到焦点时是否自动选中文本框中的内容,逻辑值,默认逻辑假(.
F.)。
文本框的 SelStart、SelLength 和 SelText 属性参见§8.7 节编辑框的相关内容。
文本框最常用的事件是:
1.Valid:该事件在文本框失去焦点之前发生,通常在文本框中输入数据后按回车键,或按 tab 键,或点击
命令按钮时,焦点将从该文本框转移,此时会触发该文本框的 Valid 事件;该事件通常用来验证文本框中输入
内容的正确性,如果输入错误,可在 Valid 事件代码中包含 return .F.,那么焦点不会从文本框转移,可继续修改
文本框中的数据。
和焦点有关的另外三个事件是:
2.When:该事件在文本框得到焦点之前发生,通常用来保存文本框中原来的内容;
3.GotFocus:该事件在文本框得到焦点时发生;
4.LostFocus:该事件在文本框失去焦点时发生;
初学者可能只注意到文本框得到或者失去了焦点,其实在得到或失去焦点的过程中隐含 着其它相关事件。
例如文本框得到了焦点,必定经历了得到焦点之前事件;又例如文本框失去了焦点,那么必定经历了失去焦点
之前事件。
文本框常用的事件还有:
5.KeyPress:当用户按下并释放某个键时发生此事件,此事件常用于截取输入到文本框中的内容,使我们
可以立即检验按键的有效性或对键入的字符进行格式编排。
文本框最常用的方法程序是:
SetFocus:指定焦点落在哪个对象(文本框)上。
三、文本框程序设计
例 8.2:编制一个表单,实现口令验证,正确口令为“manager”,如果口令正确则提示“欢迎使用本系统”,否
则提示“口令错!请重新输入!”。表单设计和运行界面如图 8-2 所示。
图 8-2 例 8.2 表单设计和运行界面
题目分析和解答:
(1) 建立一个表单并在表单中添加控件:两个标签、一个文本框。
(2) 先设计表单初始运行界面和一些文本框属性的初始设置,表单 Form1 的 Init 事件代码为:
thisform.caption="口令验证窗"
thisform.label1.caption="请输入口令:"
thisform.label2.caption=""
thisform.text1.passwordchar="*"
thisform.text1.selectonentry=.t.
(3) 本程序利用文本框 text1 的 Valid 事件代码验证口令的正确性。
if allt(thisform.text1.value)=="manager"
thisform.label2.caption="欢迎使用本系统!"
return .t. &&可省略
else
thisform.label2.caption="口令错!请重新输入!"
return .f.
endif
§8.3 命令按钮
一、命令按钮的功能
命令按钮(commandbutton)通常用来完成某些功能或特定操作,如确定、退出、计算、查询等;特定操作
代码通常放置在命令按钮的 Click 事件中。
二、命令按钮的常用属性、事件说明
命令按钮最常用的属性是:
1.Caption:指定命令按钮的标题文本,若标题文本中含“\<”字符,那么输入“\<”后的字符可选择该命令按
钮。
很多用户习惯按键盘上的“Enter”和“Esc”键来实现“确定”和“取消”操作,命令按钮有两个属性允许用户用
“Enter”和“Esc”键来操作命令按钮而不需用鼠标点击:
2.Default:可将表单中某个命令按钮的该属性设置为逻辑真(.T.),这时该命令按钮成为默认选择;那
么按下“Enter”键,将执行该命令按钮的 Click 事件;
3.Cancel:可将表单中某个命令按钮的该属性设置为逻辑真(.T.),那么按下 “Cancel”键,将执行该命令
按钮的 Click 事件。
用户经常在面向对象程序中见到命令按钮某些时候灰化不可用,实现此功能需要设置属性:
4.Enabled:指定能否选择此按钮,逻辑值,默认逻辑真(.T.)。
如果用户喜欢彩色图形按钮,可以设置属性:
5.Picture:指定显示在按钮上的.bmp 文件。
命令按钮最常用的事件是:
Click:单击对象(命令按钮)时,执行事件代码程序。
需要说明的是几乎所有的控件都有 Click 事件,即控件可以响应用户的单击事件。
三、命令按钮程序设计
例 8.3:编制一个表单,当点击表单的“确定”按钮,弹出一个信息窗口,并释放表单。表单设计和运行界面
如图 8-3 所示。
图 8-3 例 8.3 表单设计和运行界面
单击“确定”后,弹出如图 8-4 所示的信息窗口,再单击“确定”按钮,表单窗口关闭。
图 8-4 例 8.3 的信息窗口
题目分析和解答:
(1) 建立一个表单并在表单中添加控件:一个标签、一个命令按钮。
(2) 先设计表单初始运行界面,表单 Form1 的 Init 事件代码为:
thisform.label1.caption="欢迎各位朋友光临"
thisform.command1.caption="确定"
thisform.caption="信息窗口"
(3) 本题主要考察命令按钮 command1 的 Click 事件和 messagebox()函数(参见第一章)。命令按钮
剩余55页未读,继续阅读
资源评论
swordman420
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功