第8章表单中控件的设计及应用Word格式文档下载.docx

上传人:b****4 文档编号:6335853 上传时间:2023-05-06 格式:DOCX 页数:48 大小:145.85KB
下载 相关 举报
第8章表单中控件的设计及应用Word格式文档下载.docx_第1页
第1页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第2页
第2页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第3页
第3页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第4页
第4页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第5页
第5页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第6页
第6页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第7页
第7页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第8页
第8页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第9页
第9页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第10页
第10页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第11页
第11页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第12页
第12页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第13页
第13页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第14页
第14页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第15页
第15页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第16页
第16页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第17页
第17页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第18页
第18页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第19页
第19页 / 共48页
第8章表单中控件的设计及应用Word格式文档下载.docx_第20页
第20页 / 共48页
亲,该文档总共48页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

第8章表单中控件的设计及应用Word格式文档下载.docx

《第8章表单中控件的设计及应用Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《第8章表单中控件的设计及应用Word格式文档下载.docx(48页珍藏版)》请在冰点文库上搜索。

第8章表单中控件的设计及应用Word格式文档下载.docx

和Height属性值(表8.1)。

表8.1形状控件的属性表

Curvature属性值

Width与Height属性值相等

Width与Height属性值不相等

正方形

矩形

1~98

圆角正方形(随着Curvature属性值增大,其圆角也相应变大)

圆角矩形(随着Curvature属性值增大,其圆角也相应变大)

99

椭圆

在表单上,若想使一个对象放置在其他对象上面,可将该对象“置前”;

若想使一个对象被其他对象遮盖,可将该对象“置后”。

方法:

选定对象→“格式”菜单→“置前”或“置后”命令。

3.图像(Image)

图像控件用于在表单上显示静态图像,利用图像(Image)控件的Picture属性指定图像文件名及存放位置,图像文件的类型可以是:

BMP、ICO、GIF或JPG等。

8.2控制类控件

在表单应用程序中,控制类控件起到控制作用,常用来完成某种特定的操作。

VFP中的控制类控件主要有命令按钮和命令按钮组。

8.2.1命令按钮(CommandButton)

命令按钮可以完成某种特定功能,如关闭表单和移动记录指针等,通常在其Click事件中编写程序代码。

命令按钮的常用属性如下:

用于设置命令按钮的标题,即显示在命令按钮上的文字。

在Caption属性值中以“\<

字母”方式输入值,则表示定义热键,即运行表单时按该字母键,将触发按钮的Click事件。

如:

某命令按钮的Caption属性值为“退出\<

E”,则表示按下键盘上的E键将触发该按钮的Click事件。

(2)Default:

用于设置命令按钮是否为表单的默认按钮,此属性值为逻辑型。

当其值为.T.时,命令按钮为当前表单中的默认按钮。

命令按钮的Default属性的系统默认值为.F.。

一个表单中只能有一个默认命令按钮。

在运行表单时,如果焦点不在任何命令按钮上,按下回车键时,则系统将自动触发表单中默认按钮的Click事件;

如果焦点在某个命令按钮上时,按下回车键则执行焦点所在的命令按钮的Click事件。

(3)Cancel:

用于设置Esc键所触发的命令按钮,Cancel属性值为逻辑型,系统默认值为.F.。

在表单运行时按Esc键,将焦点移到Cancel值为.T.且“Tab键次序”最小的命令按钮上,同时触发其Click事件。

即在同一个表单上可以将多个命令按钮的Cancel值为.T.,但按Esc键时只有一个命令按钮做出反映。

(4)Enabled:

适用于大多数控件,如命令按钮、表单、标签、文本框等。

该属性用于设置对象是否可用,即是否响应用户引发的事件。

Enabled属性值为逻辑型,当其值为.T.(系统默认)时,表示该控件可用。

【例8.1】制作“退出”按钮,在运行表单时,当单击该按钮、按回车键、按Esc键或按E键时,均能完成关闭表单的操作。

具体制作步骤如下:

(1)建立新表单Frm8_1.scx。

(2)在表单中添加一个命令按钮Command1,并对Command1命令按钮按表8.2的属性设置:

表8.2Command1命令按钮的属性设置

属性名

属性值

Caption

退出\<

E

Default

.T.

Cancel

(3)Command1命令按钮的Click事件代码:

ThisForm.Release

(4)保存表单并运行。

8.2.2命令按钮组(CommandGroup)

命令按钮组是容器类控件,可以包含多个命令按钮。

命令按钮组和组内命令按钮都有各自的属性、事件和方法。

因此,既可以单独操作某个命令按钮,也可以对命令按钮组进行整体操作。

1.命令按钮组的常用属性

(1)ButtonCount:

用于设置命令组中所含按钮的数目,该属性值为数值型,其系统默认值为2,即包含2个命令按钮。

(2)Buttons:

用于存取命令按钮组中各按钮的数组。

在创建按钮组时建立该属性数组,可以用该数组为命令按钮组中的命令按钮设置属性或调用方法。

如,将命令按钮组中第2个按钮的标题改为“OK”,可用下列语句:

ThisForm.CommandGroup1.Buttons(3).Caption=’OK’

Buttons属性数组下标的取值范围在1至ButtonCount属性值之间。

(2)Value:

通过命令按钮组的Value属性值,可以判断用户单击组内的哪个按钮。

Value属性值可以为数值型(系统默认值为数值1)或字符型。

若Value属性的初始值设置为数值型,则Value将获得用户所单击按钮在组内的顺序号;

若Value属性的初始值设置为字符型,则Value将获得用户所单击的按钮的Caption属性值。

2.命令按钮组生成器

与其他控件一样,命令按钮组的属性可以利用属性窗口设置,但对于某些属性,使用命令按钮组生成器设置较为方便。

打开生成器的方法:

从命令按钮组的快捷菜单中选择“生成器”,在生成器中可以设置命令按钮组中的按钮数目、按钮标题及按钮布局等。

3.命令按钮组中按钮的编辑

若对命令按钮组中某个按钮进行设计,可采用以下两种方法:

方法一:

在“属性”窗口的“对象选择框”中选择命令按钮。

方法二:

从命令按钮组的快捷菜单中选择“编辑”命令,进入编辑状态后,单击某个命令按钮进行单独地编辑操作。

这种编辑操作的方法对于其他容器类对象,如选项按钮组和表格等,同样适用。

【例8.2】在运行表单时,单击表单上命令按钮组中的某个按钮,将该按钮的标题显示到标签上。

(1)新建表单文件Frm8_2.SCX。

(2)表单中所添加的对象及其属性如表8.3。

表8.3表单Frm8_2.SCX中控件及其属性

对象名

Label1

你所选择的按钮是:

Label2

CommandGroup1

ButtonCount

3

Value

1

Command1

No1

Command2

No2

Command3

No3

(3)命令按钮组CommandGroup1的Click事件代码如下:

n=This.Value&

&

将单击选中的命令按钮序号保存在变量n中

DoCase

Casen=1

ThisForm.label2.Caption=This.Command1.Caption&

注意Thisform和This的含义

Casen=2

ThisForm.label2.Caption=This.Command2.Caption

Casen=3

ThisForm.label2.Caption=This.Command3.Caption

EndCase

(4)运行表单。

如果将命令按钮组CommandGroup1的Value初值设为字符型(如:

Command1),则本例CommandGroup1的Click事件代码可以简化为:

ThisForm.label2.Caption=This.Value

由此例可以看出,适当设置对象的有关属性,可能会简化程序代码。

8.3编辑类控件

在表单运行时,可以通过编辑类控件输入数据,从而提供程序运行时所需要的数据。

编辑类控件主要有文本框和编辑框两种。

8.3.1文本框(TextBox)

文本框用于输入或编辑数据,且文本框内只能包含一段数据,即当输入回车时,文本框内数据的输入随即终止。

文本框可编辑的数据类型可以是字符型、数值型、逻辑型或日期型数据,具体的数据类型与其Value属性的初始值有关。

1.文本框的常用属性

(1)Value:

用于接收用户由键盘输入的信息,或将相应数据在文本框内显示。

文本框可以接收的数据类型与其Value的初始值有关。

若Value的初始值为空(系统默认)或字符型,则表示接收字符型数据;

若Value的初始值为数值型数据,则表示接收数值型数据;

若Value的初始值为.F.或.T.,则接收逻辑型数据;

若Value的初始值为{}时,则表示接收日期型数据。

(2)PasswordChar:

可以设置文本框内是显示输入的字符,还是显示指定的占位符。

系统默认值为空,即文本框内显示输入的字符。

若将该属性值设置成一个字符(如*),则向文本框中输入的任何信息,在文本框中都将以该字符(如*)显示。

通常用于输入密码的文本框需要设置该属性。

(3)InputMask:

用于设置输入数据的格式,该属性值是一个格式字符串,其中每个字符规定了对应位的数据格式,格式字符串的长度规定了输入数据的宽度。

格式字符串中各个字符的含义如表8.4。

InputMask的系统默认值为空。

表8.4 InputMask属性值

符号

功能描述

X

允许输入任何字符

9

允许输入数字

#

允许输入数字、空格和正(+)、负(—)号

$

在固定位置上显示当前货币符号(由SetCurrency命令设定)

指定小数点位置

在对应位上显示逗号“,”

【例8.3】建立表单文件Frm8_3.SCX,使其运行时,对输入的日期和天数进行相加计算,并将计算后的新日期在标签上显示。

表单中所包含的对象及其属性、相应代码如表8.5。

表8.5Frm8_3表单中对象属性及代码

对象名

属性/事件名

属性值/代码

备注

Caption属性

日期:

Text1

Value属性

{}

天数:

Text2

InputMask属性

######

Label3

用于显示新日期

计算新日期

Click事件

ThisForm.Label3.Caption=’新日期为:

’+;

DTOC(ThisForm.Text1.Value+ThisForm.Text2.Value)

【例8.4】设计一个用户登录窗口(如图8.1),要求最多允许输入3次用户名和密码。

图8.1用户登录窗口

(1)建立表单Frm8_4.SCX,其中所包含的对象及其属性见表8.6。

表8.6表单Frm8_4中的对象及其属性表

属性名

属性值

说明

Form1

用户登录窗口

AutoCenter

使表单运行时自动居中于主窗口内

用户名:

密码:

InputMask

XXX

设置用户名长度为3个字符

9999

设置密码是4位数字

PasswordChar

*

使用户所输入的密码以*号屏蔽

确认

按回车键,触发此按钮的Click事件

退出

按ESC键,触发此按钮的Click事件

(2)Form1的Init事件代码,初始化操作。

ThisForm.Text1.SetFocus&

使用户名文本框获得焦点,即其内出现插入点

PublicN&

定义公共变量N,N用于统计用户输入密码的次数

N=0

(3)Command1的Click事件代码,用户名及密码判断操作。

yhm=ThisForm.Text1.Value

mm=ThisForm.Text2.Value

IFLower(yhm)=="

abc"

.AND.mm=="

1234"

MessageBox("

用户名和密码正确,恭喜您!

"

ELSE

N=N+1

IFN=3

三次输入均错误,禁止进入系统!

用户名或密码错误!

请您重新输入"

ThisForm.Text1.Value="

ThisForm.Text2.Value="

&

清空用户名及密码的输入区

ThisForm.Text1.SetFocus

ENDIF

(4)Command2的Click事件代码,关闭表单操作。

2.控件与数据绑定

所谓数据绑定,就是将控件与数据源的数据结合在一起。

若要实现数据绑定,则需要为控件指定数据源。

控件绑定的意义在于数据源可以决定控件的值,而控件值的改变也将会直接影响数据源中的数据。

以文本框为例,当它与某个数据绑定后,文本框的Value属性值便与数据源的数据相对应,即:

文本框内显示的数据由数据源决定;

反过来,通过修改文本框中的内容实现修改数据源中的数据。

控件可以通过其ControlSource属性与指定数据源进行绑定,数据源可以是数据环境中某表中的字段名,也可以是内存变量。

除了文本框有ControlSource属性以外,编辑框、列表框、组合框、选项按钮组和复选框等控件也有ControlSource属性,其设置方法和作用基本相同。

【例8.5】设计表单(如图8.2),使文本框与XSB表中的姓名字段绑定,通过“显示”按钮,检验修改文本框内的数据是否对表中当前记录的姓名字段值有影响。

图8.2文本框数据绑定实例

(1)建立表单Frm8_5.SCX,并将XSB表添加至表单的数据环境中。

(2)表单中所包含的对象及其属性见表8.7。

表8.7表单Frm8_5中的对象及其属性

说明

姓名:

ControlSource

XSB.姓名

当数据环境中已添加表后,此值可以在属性输入区的下拉列表框中选择。

AutoSize

设置文本显示区域与文本大小一致

显示

用于显示当前记录的记录号及其姓名字段值

(3)Command1的Click事件代码:

ThisForm.Label2.Caption="

当前记录号为:

+Str(RecNo(),2)

ThisForm.Label3.Caption="

当前记录的姓名为:

+姓名

(5)运行表单,首先单击“显示”按钮,显示表中当前记录的姓名,然后修改文本框中的内容,再单击“显示”按钮,检验当前记录的姓名是否更改。

8.3.2编辑框(EditBox)

与文本框相似,编辑框也是用于输入或编辑文本,但编辑框与文本又有所不同,其主要区别如下:

•编辑框可以输入多段文本,按回车键仅作为每段文本的结束,不会终止编辑框的文本输入;

而文本框仅能输入一段文本,按回车键将终止文本框的输入。

•编辑框仅能接收字符型或备注型数据,常用来处理较长的字符型或备注型数据;

而文本框可以接收字符型、数值型、逻辑型或日期型4种数据。

编辑框的常用属性如下:

(1)AllowTabs:

设置编辑框中是否允许使用Tab键,此属性值的数据类型为逻辑型。

当AllowTabs值为.T.时,在编辑框中每按一次Tab键将产生一个制表位,按Ctrl+Tab键可将焦点移出编辑框。

当AllowTabs值为.F.(系统默认值)时,按Tab键直接将焦点移出编辑框。

(2)HideSelection:

用于指定当编辑框失去焦点时,是否显示选定文本的选定状态,此属性值为逻辑型。

若HideSelection值为.T.(系统默认值),当编辑框失去焦点时,将不显示选定文本的选定状态;

若HideSelection值为.F.,当编辑框失去焦点时,仍然显示选定文本的选定状态。

(3)ReadOnly:

用于设置是否允许键盘修改编辑框中的内容,此属性值为逻辑型。

若ReadOnly值为.F.(系统默认值),则允许修改编辑框中的内容;

反之,不允许修改编辑框中的内容。

(4)ScrollBars:

用于设置编辑框是否有垂直滚动条,此属性值为数值型。

若ScrollBars值为2(系统默认值),则编辑框包含垂直滚动条;

若ScrollBars值为0,则编辑框没有滚动条。

(5)SelText:

用于获取编辑框中选定的文本内容。

若没有选定任何文本,则返回空串。

【例8.6】当选定编辑框中文本后,单击“提取”按钮,则将选定内容在文本框中显示。

表单Frm8_6和其中的对象、属性及代码如表8.8。

表8.8 表单Frm8_6中对象属性及代码表

编辑框演示

Edit1

HideSelection属性

.F.

失去焦点时,选定文本仍然处于选定状态

ScrollBars属性

2

有垂直滚动条

此对象各属性均可用系统默认值

提取

ThisForm.Text1.Value=This.Parent.Edit1.SelText

*此处请体会Parent的用法,及如何在文本框中显示数据

8.4列表类控件

列表类控件包括列表框和组合框两个控件,这两个控件都提供了列表,允许从列表中选择一行或多行数据进行操作。

8.4.1列表框(ListBox)

运行表单时,列表框中提供了一组数据项(条目),可以从中选择一行或多行数据。

1.列表框的常用属性

(1)RowSourceType:

用于设置列表框中数据源的类型,即:

指出列表框中显示的数据来源类型(见表8.9)。

(2)RowSource:

RowSource和RowSourceType属性一起使用。

RowSource属性指出列表框中显示的数据来源(见表8.9)。

表8.9 RowSourceType属性取值及RowSource的使用

RowSourceType值

列表框、组合框的数据源

0-无

(系统默认值)

在程序运行时,用AddItem方法添加列表框条目,用RemoveItem方法从列表框中移去条目。

1-值

用RowSource属性手工指定要在列表框中显示的条目,各条目之间用逗号分隔。

如,在属性窗口中设置RowSource属性:

英语,政治,计算机;

在程序中设置RowSource属性:

ThisForm.List1.RowSource=”英语,政治,计算机”。

2-别名

将表中的字段值作为列表框条目的数据源。

表由数据环境提供,用RowSource属性指出表名,用ColumnCount属性指定字段个数,也就是列表框中所含的列数。

3-SQL语句

将SQLSelect语句的执行结果作为列表框条目的数据源。

在RowSource属性中填一条Select语句。

若在程序中设置RowSource属性,Select语句应作为字符型数据赋值,如,ThisForm.List1.RowSource=”Select*FromCJBIntoCursorTMP”

4-查询(QPR)

用查询的执行结果作为列表框条目的数据源。

RowSource属性应设置为一个具体的查询(QPR)文件。

ThisForm.List1.RowSource=”xscx.qpr”

5–数组

将数组中的内容作为列表框条目的来源,即用数组中的元素填充列表框。

RowSource属性应设置为数组名,在表单的Init事件中定义数组及为元素赋值。

6-字段

将表中的一个或几个字段作为列表框条目的来源,RowSource属性中各字段间用逗号分隔,首字段应有表名前缀,表由数据环境提供。

如,ThisForm.List1.RowSource=”CJB.考试成绩,平时成绩,实验成绩”。

7-文件

将某个驱动器和目录下的文件名作为列表框的条目。

在RowSource属性中设置路径,也可以使用通配符,如,d:

\xsxxb\*.dbf。

表单运行时,可以选择不同的驱动器和目录。

8-结构

用RowSource属性指定表,将表中的字段名作为列表框的条目。

9-弹出式菜单

用一个先前定义的弹出式菜单作为列表框数据源。

(3)ListCount:

用于获取列表框中数据的行数。

此属性值在属性窗口中不可修改,在表单运行时只读。

(4)MultiSelect:

用于设置列表框中是否允许同时选定多行数据。

系统默认值为.F.,即不允许同时选定多行数据。

当其值为.T.时,允许同时选定多行数据。

在表单运行时,只需按住<

Ctrl>

或<

Shift>

键单击数据即可完成多选操作。

(5)List(i):

用于读取列表框中第i行数据。

此属性值在属性窗口中不可修改。

(6)Selected(i):

用于判断列表框中某个数据条目是否处于被选定状态,如果选定第i行数据,则Selectd(i)的值为.T.。

(7)ColumnCount:

指定列表框的列数。

(8)BoundColumn:

在列表框包含多项时指定哪一列作为Value属性的值。

(9)DisplayVal

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2