vfp常用的表单控件_第1页
vfp常用的表单控件_第2页
vfp常用的表单控件_第3页
vfp常用的表单控件_第4页
vfp常用的表单控件_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文格式为Word版,下载可任意编辑——vfp常用的表单控件标签(Label)控件

可以编写代码来改变Label控件显示的文本,以响应运行时的事件。例如,假使一个应用程序要几分钟时间作改动,则可以显示Label中的进程状态信息。还可以使用Label来标识控件,例如TextBox控件没有自己的Caption属性,这时就可以使用Label来标识这个控件。

在Label控件中定义访问键时,就可以按ALT+设定的字符来把焦点移动到TAB键顺序中的下一个控件。常用的标签属性

?

Caption属性

当创立一个新的对象时,其缺省标题为缺省的Name属性设置。该缺省标题包括对象名和一个整数,如Command1或Form1。为了获得一个描述更明白的标签,应对Caption属性进行设置。

可以使用Caption属性赋予控件一个访问键。在标题中,在想要指定为访问键的字符前加一个(\\

WAITWINDOWS\没有选择需要置换的单词\endif操作步骤:

ooooo

创立表单,然后在表单上田纪一个编辑框两个命令按钮。检查编辑框控件的name属性值是否与题目中所说的名称一致。假使不一致,应当进行设置,否则,就需要对上面的代码作相应的修改。设置编辑框的hideselection属性值。分别设置两个命令按钮的caption属性值。分别为两个命令按钮设置click事件代码。

返回

复选框(checkbox)控件

一个复选框用于标记一个两值状态,如真(.T.)或假(.F.)。当处于真状态时,复选框内显示一个对勾;否则,复选框内为空白。

??

caption属性

用来指定复选框旁边的文字。

value属性

用来指明复选框的当前状态。设置值有三种状况如表所示复选框(checkbox)控件

一个复选框用于标记一个两值状态,如真(.T.)或假(.F.)。当处于真状态时,复选框内显示一个对勾;否则,复选框内为空白。

??

caption属性

用来指定复选框旁边的文字。

value属性

用来指明复选框的当前状态。设置值有三种状况如表所示

属性值0或.f.1或.t.2或.null.说明(默认值),未被选中被选中不确定,只在代码中有效?controlsource属性

指明与复选框建立联系的数据源。作为数据源的字段变量或内存变量,其类型可以是规律型或数值型。对于规律型变量,值.F.、.T.和.null.分别对应复选框未被选中、被选中和不确定。

对于数值型变量,值0、1和2(或.null.)分别对应复选框未被选中、被选中和不确定。用户对复选框操作结果会自存储到数据源变量以及value属性中。

复选框的不确定状态与不可选状态不同。不确定状态只说明复选框的当前状态值不属于两个正常状态之中的一个,但用户仍能对其进行选择操作,并使其变为确定状态。而不可选状态则说明用户现在不适合针对它作出某种选择。在屏幕上,不确定状态复选框以灰色显示,标题文字正常显示。而不可选状态复选框标题文字的显示颜色由diasbledbackcolor和diasbledforecolor

返回

选项组(optiongroup)控件

选项按钮组是包含选项按钮的容器。寻常,选项按钮允许用户指定对话框中几个操作选项中的一个,而不是输入数据。

设置选项按钮组中的选项按钮数目

在表单中创立一个选项按钮组时,它默认地包含两个选项按钮,改变ButtonCount属性可以设置选项按钮组中的选项按钮数目。

??

ButtonCount属性

设置ButtonCount属性,表示所需的选项按钮数目。

Value属性

选项按钮组的Value属性说明用户选定了哪一个按钮。例如,选项按钮组有六个选项按钮,假使用户选择了第四个选项,选项按钮组的Value属性就是4。

?ControlSource属性

指明与选项组建立联系的数据源。作为选项组数据源的字段变量或内存变量,其类型可以示数值型或字符型。譬如,变量值为数值型3,则选项组中第三个按钮被选中;若变量值为字符型“option3〞,则caption属性值为“option3〞的按钮被选中。用户对选项组操作结果会自动存储到数据源变量以及value属性中。

?Buttons属性

还可以在运行时刻使用Buttons属性,并指定选项按钮在组中的索引号来设置这些属性。例如,假使optCust是组中的第三个按钮,下面一行代码同样完成对optCust标题的设置:

THISFORM.opgChoices.Buttons(3).Caption=\

返回

列表框(listbox)控件

列表框提供一组条目(数据项),用户可以从中选择一个或多个条目。一般状况下,列表框显示其中的若干条目,用户可以通过滚动条浏览其他条目。常用的属性:

??

rowsourcetype

rowsourcetype属性指明列表框中条目数据源的类型,rowsource

属性指定列表框的条目数据源。

?

属性值0rowsourcetype属性的取值范围及含义如下表所示。说明无(默认值)。在程序运行时,通过additem方法添加列表框条目,通过removeitem方法移去列表框条目12值。通过rowsource属性手工指定的具体的列表框条目别名。江表中的字段执作为列表框的条目。columncount属性指定要取的字段数目,也就是列表框的列数。指定的字段总是表中最前面的若干字段。34567sql语句。将sqlselect语句的执行结果作为列表框的条目的数据源。查询(.pqr)。将.pqr文件执行产生的结果作为列表框条目的数据源数组。将数组中的内容作为列表框条目的来源。字段。将表中的一个或几个字段作为列表框条目的数据源文件。将某个驱动器和目录下的文件名作为列表框的条目,在运行时,用户可以选择不同的驱动器和目录,可以利用文件名框架指定一部分文件。如要在列表框中显示当前目录下visualfoxpro表文件清单,可将rowsource属性设置为*.dbf8结构。将表中的字段名作为列表框的条目,由rowsource属性指定表。若Rowsource属性值为空,则列表框显示当前表中的字段名清单9弹出式菜单。将弹出式菜单作为列表框条目的数据源两个属性在设计和运行时可用。还适合于组合框。

??????

list属性

用以存取列表框中数据条目的字符串数组。

该属性在设计时不可用,在运行时可读写。还适合于组合框。istcount属性

指明列表框中数据条目的数目。

该属性在设计时不可用,在运行时只读。还适合于组合框。

???

columncount属性指定列表框的列数

对于列表框和组合框,该属性在设计和运行时可用。还适合于组合

框和表格。

value属性

返回列表框中别选中的条目。该属性值可以是数值型也可以是字符

型。假使列表框不止一列,则返回由

??

??

boundcolumn指明的列上的数据项。

对于列表框和组合框。该属性只读,该属性的取值及类型总是与

controlsource属性所指定的字段或内存变量

???

的取值及类型保持一致。controlsource属性

该属性在列表框中的用法与其他控件中的用法有所不同。在这里,

用户可以通过该属性指定的一个字段或变量

?????

用以保存用户从列表框中选择的结果。selectd属性

制定列表框内的某个条目是否处于选定状态。multiselect属性

指定用户能否在列表框控件内进行多重选定。

返回

组合框(combox)控件

组合框和列表框类似,主要区别在于:组合框只有一个条目是可见的。组合框不提供多重选择的功能。

组合框有两种形式:下拉组合框和下拉列表框,通过设置style属性可选择想要的形式。返回

表格控件

表格是一个容器对象,和表单集包含表单一样,表格也能包含列。这些列除了包含标头和控件外,每一个列还拥有自己的一组属性、事件和方法程序,从而为表格单元提供了大量的控件。

表格设计的基本操作

?

调整表格中列的宽度

在表格设计方式下,将鼠标指针置于表格列的标头之间,这时指针变为带有左右两个方向箭头的竖条。

将列拖动到需要的宽度或者在“属性〞窗口中设置列的Width属性。

?调整表格中行的高度

1.在表格设计方式下,将鼠标指针置于“表格〞控件左侧的第一个按钮和其次个按

钮之间,这时指针将变成带有向上和向下箭头的横条。2.将行拖动到需要的宽度。

–或者–在“属性〞窗口中设置列的Height属性。

提醒将AllowRowSizing设置为“假〞(.F.),可以防止用户在运行时刻改变表格行的高度。

表格设计也可以调用表格生成器来进行。步骤如下:?先在表单上放置一个表格。?右键单击表格在弹出的快捷菜单中选择表单生成器开启生成器对话框,然后设置有关参数。生成器选项卡的含义

????

表格项指定要在表格中显示的字段。样式指定表格显示的样式。布局指定列标题和控件类型。

关系指定表格字段与表字段之间的关系。

常用的表格属性

?

recordsourcetype属性

recordsourcetype属性指明表格数据源的类型,recordsource属性指定表格数据源。

属性值01234说明表。数据来源于由recordsourse属性指定的表,该表被自动开启(默认值)别名。数据来源于已开启的表,由recordsource属性指定该表的别名提醒。运行时,由用户根据提醒选择表格数据源查询。数据来源于查询,由recordsource属性指定一个查询文件sql语句,数据来源于sql语句,由recordsource属性指定一条sql语句

设置了表格的recordsource属性后,可以通过cintrolsource属性为表格中的一列指定它所要显示的内容,假使不

指定,该列将显示表格数据源中下一个没有显示的字段。这两个属性在设计时可用,在运行时可读写,都适用于表格。

??

ColumnCount属性

指定列的数目。假使ColumnCount设置为-1,表格将具有和表格

数据源中字段数一样多的列。

linkmasker属性

显示在表格中的子记录的父表。childorder

和父表的主关键字相联接的子表中的外部关键字。

??????

relationalexpr属性

确定基于主表字段的关联表达式。

常用的列属性

下表列出了在设计时刻常用的列属性。

属性ControlSourceSparse说明在列中要显示的数据。常见的是表中的一个字段。假使将Sparse属性设置为“真〞(.T.),表格中控件只有在列中的单元被选中时才显示为控件(列中的其他单元仍以文本形式显示)。将Sparse设置为“真〞(.T.),允许用户在滚动一个有好多显示行的表格时能快速重画。CurrentControl表格中哪一个控件是活动的。默认值为“Text1〞。假使在列中添加了一个控件,则可以将它指定为CurrentControl。交互地在表格列中添加控件,操作步骤如下:

1.表单中添加一个表格。

在“属性〞窗口中,将表格的ColumnCount属性设置为需要的列数。例如,假使需要一个两列的表格则键入“2〞。2.在“属性〞窗口的“对象〞框中为控件选择父列。

例如,要选择Column1来添加控件,选中择这一列时,表格的边框发生变化,说明正在编辑一个包含其中的对象。

3.在“表单控件〞工具栏中选择所要的控件,然后单击父列。

在“表单设计器〞中,新控件不在表格列中显示,但在运行时刻会显示出来。4.在“属性〞窗口中,要确保该控件缩进显示在“对象〞框中父列下面。假使新控件是一个

复选框,应将复选框的Caption属性设置为“〞,并将列的Sparse属性设置“假〞(.F.)。

5.将父列的ControlSource属性设置为需要的表字段。

例如,下面的演示中,列的ControlSource属性是文件TESTDATA.DBC的

products.discontinu,这个文件保存在\\Samples\\VFP\\DATA目录下。

6.将父列的CurrentControl属性设置为新参与的控件。当运行表单时,这个控件将显示在表格列中。在运行时刻,复选框显示在列中。

提醒假使想让复选框在表格列中居中,可先创立一个容器类,将复选框添加到容器类中,并调整复选框在容器类中的位置。然后将容器类添加到表格列中,并将复选框的ControlSource属性设置为需要的字段。若要在“表单设计器〞中移去表格列中的控件。

1.在“属性〞窗口的对象框中选择要移去的控件。2.激活“表单设计器〞。

3.假使“属性〞窗口可见,控件的名称将显示在“对象〞框中。4.按下DELETE键。

也可以在代码中使用AddObject方法程序将控件添加到表格列中。

返回

页框(pageframe)控件

页框是包含页面的容器对象,页面又可包含控件。可以在页框、页面或控件

级上设置属性。

查看使用页框的例如操作如下:

1.运行Solution.app,该文件位于VisualStudio…\\Samples\\Vfp98\\Solution目录

下。

2.在目录树视图中,单击“Controls〞,然后选取“Pageframe〞。

可以把页框想象为有多层页面的三维容器,只有最上层页面(或在页框的顶部)中的控件才是可见和活动的。

表单上一个页框可有多个页面,页框定义了页面的位置和页面的数目,页面的左上角固定在页框的左上角。控件能放置在超出页框尺寸的页面上。这些控件是活动的,但假使不从程序中改变页框的Height和Width属性,那么这些控件不可见。

使用页框和页面,可以创立带选项卡的表单或对话框,和“项目管理器〞中见到的一样。此外,用页框还能在表单中定义一个区域,在这个区域中可以便利地将控件换入换出。例如,在向导中,表单的大部分内容是保持不变的,但有一个区域在每一步都要更改。此时不必为向导的不同步骤创立五个表单,而只需创立一个带有页框的表单,页框中有五个页面即可。

将页框添加到表单的操作步骤如下:

1.在“表单控件〞工具栏中,选择“页框〞按钮并在“表单〞窗口拖动到想要的尺寸。2.设置PageCount属性,指定页框中包含的页面数。向页框中添加控件的操作步骤如下:

1.从页框的快捷菜单中选择“编辑〞命令,将页框激活为容器。页框的边框变宽,表示

它处于活动状态。

2.同与向表单中添加控件的方法,向页框中添加控件。

解释和其他容器控件一样,必需选择页框,并从用鼠标右键弹出的快捷菜单中选择“编辑〞命令,或在“属性〞窗口的“对象〞下拉列表中选择容器。这样,才能先选择这个容器(具有宽边),再朝正设计的页面中添加控件。在添加控件前,假使没有将页框作为容器激活,控件将添加到表单中而不是页面中,即使看上去好象是在页面中。在页框中选择不同的页面的操作方法如下:

1.单击鼠标右键,将页框作为容器激活,然后选择“编辑〞。2.选择要使用的页面选项卡。–或者–

在“属性〞窗口的“对象〞框中选择这一页面。–或者–

在“表单设计器〞底部的“页〞框中选择这一页面。

将控件添加到页面上的操作方法:

假使将控件添加到页面上,它们只有在页面活动时才可见和活动。

1.在“属性〞窗口的“对象〞框中选择页面,页框的周边出现边框,说明可以操作其中包含

的对象。

2.在“表单控件〞工具栏中,选择想要的控件按钮并在页面中调整到想要的大小。

管理“页面〞选项卡上的长标题

假使选项卡上的标题太长,不能在给定页框宽度和页面数的选项卡上显示出来,可以有下面两种选择:

??

将TabStretch属性设置为“1-单行〞,这样只显示能放入选项卡中的标题字符,“单

行〞是默认设置。

将TabStretch属性设置为“0-多重行〞,这样选项卡将层叠起来,以便所有选项卡

中的整个标题都能显示出来。

在程序中换页面

不管页框是否具有选项卡,都可以从程序中使用ActivePage属性来激活一个页面。例如,下面列出表单中一个命令按钮的Click事件过程代码,它将表单中页框的活动页面改为第三页面。THISFORM.pgfOptions.ActivePage=3

常用的页框属性

下表列出了在设计时刻常用的页框属性。

属性TabsTabStylePageCount说明确定页面的选项卡是否可见。是否选项卡都是一致的大小,并且都与页框的宽度一致。页框的页面数。例设计一个包含两个选项卡的查询对话框,用于设置查询学生数据时所需的参数。“条件〞选项卡用于设置出生日期,“输出〞选项卡用于设置显示字段。单击“确认〞按钮将根据设置的参数查询显示有关学生数据。单击“取消〞按钮,关闭对话框。条件选项卡

“输出〞选项卡

操作过程:I.II.III.

创立一个新表单,开启“数据环境设计器〞窗口,向其中添加学生表。通过“表单控件〞工具栏在表单上添加一个页框控件和两个命令按钮。

右键单击页框控件,在弹出的快捷菜单中选择“编辑〞命令。单击选择页框中的第一个页面(page1),然后在其中添加选项组(将buttoncount属性值设置成4),并添加相应的标签和文本框控件。IV.V.

单击页框中的其次个页面(page2),然后在其中添加两个列表框及相应的标签和命令按钮。

设置表单及表单中的各标签、命令按钮和选项按钮的caption属性值,并调整好表单及表单内各控件的位置与大小。

VI.VII.

将“可选字段〞列表框(list1)的rowsourcetype属性值设置成8(结构),rowsource属性值设置成“学生〞,multiselect属性值设置成.t.。

将“被选字段〞列表框(list2)的rowsourcetype属性值设置成0(无),multiselect属性值设置成.t.。该列表框的条目将在表单运行过程中通过方法additem和removeitem添加和删除。

VIII.IX.

为使表单符合对话框的特点,将表单的maxbutton和minbutton属性值设置成.f.,设置“所有学生〞选项按钮的click事件代码:this.parent.parent.text1.enabled=.f.this.parent.parent.text2.enabled=.f.this.par

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论