程序设计表单设计实用教案_第1页
程序设计表单设计实用教案_第2页
程序设计表单设计实用教案_第3页
程序设计表单设计实用教案_第4页
程序设计表单设计实用教案_第5页
已阅读5页,还剩99页未读 继续免费阅读

下载本文档

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

文档简介

1、本章的主要(zhyo)内容:6.1 案例引入6.2 表单设计(shj)基础 (重点)6.3 利用表单设计(shj)器设计(shj)表单(重点) 6.4 表单控件设计(shj)(重点、难点)第1页/共103页第一页,共104页。6.1 案例(n l)引入 在学习表的操作的时候(sh hou),我们对表中数据的操作一般都是在Visual FoxPro提供的界面中进行,例如我们在表的浏览窗口中浏览表中记录,修改表中原有数据,并可以追加新的记录。 我们如何脱离Visual FoxPro系统提供的操作界面,按照自己的需要定制更加友好的数据输入和输出界面呢?这就需要用到表单(Form)。Visual Fo

2、xPro中的表单类似于Windows中的窗口与对话框,利用表单、表单中的控件以及程序代码,可以输出数据、接受用户的数据输入,还可以对数据进行各种处理。第2页/共103页第二页,共104页。 例如,我们要处理学生档案表(xsda.dbf)中的数据,就可以以学生档案表为数据源建一个表单,通过这个表单,可以十分方便地对学生档案表中的数据进行处理。在这一表单界面中,用户只要单击界面上的各个(gg)按钮,就可以马上实现相应操作,单击“上一条记录”、“下一条记录”按钮可以移动记录指针,单击“增加”按钮可以添加新的记录,单击“编辑”按钮可以编辑当前记录,如图6-2所示。第3页/共103页第三页,共104页。

3、 图6-2 通过(tnggu)表单来处理学生档案表中的数据第4页/共103页第四页,共104页。6.2 表单设计(shj)基础 1. 使用“表单向导”创建(chungjin)表单 Visual FoxPro提供了两种表单向导来帮助用户创建(chungjin)表单:“表单向导”适合于创建(chungjin)基于一个表的表单。“一对多表单向导”适合于创建(chungjin)基于两个具有一对多关系的表的表单。调用表单向导有两种方法: 第5页/共103页第五页,共104页。 方法一:1)在“项目管理器”中选择“文档”选项卡,选择其中的“表单”,如图6-3所示。 2)单击“新建”按钮,系统弹出“新建表单

4、”对话框,如图6-4所示。 3)单击“表单向导”图标按钮,打开“向导选取”对话框,如图6-4所示。 4)从列表框中选择要使用的向导,然后单击“确定”按钮。 5)接下来,系统打开相应的对话框,一步一步地向用户询问一些简单的问题(wnt),并根据用户的回答自动创建表单。 第6页/共103页第六页,共104页。 方法二:菜单方式调用(dioyng)。 在“文件”菜单中选择“新建”选项,然后在打开的“新建”对话框中选择“表单”文件类型并单击“向导”按钮。或者在“工具”菜单中的“向导”子菜单中选择“表单”选项。第7页/共103页第七页,共104页。 2. 使用“表单设计器”(Form Designer)

5、创建表单 可以使用以下三种方法中的一种来调用(dioyng)表单设计器: 方法一:在项目管理器中调用(dioyng)。 1)在“项目管理器”中选择“文档”选项卡,选定“表单”选项。 2)单击“新建”命令按钮,系统弹出“新建表单”对话框。 3)单击“新建表单”按钮。 方法二:菜单方式调用(dioyng)。 1)选择“文件”菜单中的“新建”选项,打开“新建”对话框。 2)选择“表单”文件类型,然后单击“新建文件”按钮。 第8页/共103页第八页,共104页。 方法三:命令方式调用。 在命令窗口中输入CREATE FORM命令。 无论采用上面(shng min)哪种方法,系统将打开“表单设计器”窗口

6、,如图6-5所示。图6-5 表单设计(shj)器窗口第9页/共103页第九页,共104页。 3. 使用“表单生成器”(Form Builder)来创建表单 在“表单设计器”的环境下,也可以调用表单生成器(如图6-6所示)。其方法有以下三种: 方法一:选择“表单”菜单中的“快速表单”选项。 方法二:单击“表单设计器”工具栏中的“表单生成器”按钮。 方法三:右键单击表单窗口,然后在弹出的快捷菜单中选择“生成器”选项。 “表单生成器”对话框如图6-6所示,其中,有两个选项卡:“字段选取(xunq)”和“样式”。第10页/共103页第十页,共104页。6.2.2 保存(bocn)表单 若要保存设计好的

7、表单,可以(ky)在“表单设计器”中选择“文件”菜单中的“保存”选项,然后在打开的对话框中指定表单文件的文件名。设计的表单将被保存在一个表单文件(.scx)和一个表单备注文件(.sct)中。 第11页/共103页第十一页,共104页。6.2.3 修改(xigi)表单 修改表单的方法有如下三种: 方法一:在“项目管理器”中修改。 1)在“项目管理器”中选择(xunz)“文档”选项卡; 2)如果表单类文件没有展开,单击“表单”图标左边的加号; 3)选择(xunz)需要修改的表单文件,然后单击“修改”按钮。 方法二:菜单方式调用。 1)选择(xunz)“文件”菜单中的“打开”选项; 2)在“打开”对

8、话框中选择(xunz)需要修改的表单文件。 方法三:命令方式调用。 在命令窗口中输入MODIFY FORM。 第12页/共103页第十二页,共104页。6.2.4 运行(ynxng)表单 根据表单文件和表单备注文件的内容产生表单对象就是运行表单,可以采用如下四种方法来运行表单文件: 方法一:在项目管理器中运行。 1)在“项目管理器”中选择要运行的表单; 2)单击“项目管理器”窗口里的“运行”按钮。 方法二:在表单设计器环境(hunjng)下选择“表单”菜单中的“执行表单”选项,或单击工具栏上的“运行”按钮。 第13页/共103页第十三页,共104页。 方法三:选择“程序”菜单中的“运行”选项,

9、打开“运行”对话框。在对话框中指定要运行的表单文件,单击“运行”按钮。 方法四:命令方式(fngsh)调用。 在命令窗口中输入以下命令: DO FORM NAME WITH, LINKED NOSHOW 第14页/共103页第十四页,共104页。6.3 利用(lyng)表单设计器设计表单 6.3.1 表单设计器简介 如果要完全按照自己的要求(yoqi)来设计表单,就需要用到表单设计器。表单设计器是系统提供给用户用来设计表单的工作界面,利用它,用户可以用一种可视化的方式来建立和修改表单。 第15页/共103页第十五页,共104页。 1. 打开表单设计器 通过(tnggu)如下方法中的任何一种,都

10、可以打开表单设计器。 1)单击Visual FoxPro系统工具栏上的“新建”按钮,在新建表单对话框选择“新建表单”; 2)在“项目管理器”中选定“表单”,并选择“新建”按钮; 3)在命令窗口输入命令CREATE FORM表单文件名; 4)在命令窗口输入命令MODIFY FORM表单文件名。第16页/共103页第十六页,共104页。 2. 表单设计(shj)器工作界面图6-7 表单设计(shj)器的常用工具第17页/共103页第十七页,共104页。 3. 表单的基本属性 1)表单的基本属性 表单的基本属性如表6-2所示。表单的常用属性说明如表6-3所示。 2)表单的基本事件(shjin) 表单

11、的常用事件(shjin)如表6-4所示。 3)表单的基本方法 表单的基本方法如表6-5所示。第18页/共103页第十八页,共104页。 4表单基本属性的设置方法 1)利用属性窗口进行设置 打开“属性”窗口的基本方法:用鼠标右击设计器窗口中的新表单,在弹出的快捷菜单中选择“属性”菜单项,或直接单击“窗体设计器”工具栏中的“属性窗口”按钮,便可出现“属性”窗口,(如图6-11所示)。 设置属性的方法:先在属性列表中选定(xun dn)某个属性名,然后在列表上方的编辑框中直接输入或重新选定(xun dn)一个属性值即可。有的属性可能需要单击属性编辑框右侧的编辑按钮,在弹出的对话框中进行设置(如颜色、

12、图片等)。 第19页/共103页第十九页,共104页。 2)以代码方式设置属性(shxng) 可在表单或控件的事件代码中设置表单的相关属性(shxng)。 如:This.BackColor=RGB(0, 0, 255) 3)鼠标拖动设置 对于表单的Height(高度)和Width(宽度)属性(shxng),可通过鼠标拖动的方式来设置。 第20页/共103页第二十页,共104页。 5设置表单的数据环境 数据环境是一个容器类对象。用户可在数据环境中预定义表单中各控件的数据来源。一旦将数据表或视图添加到表单的数据环境中,它们就会随着表单设计器的打开或表单的运行而自动打开,当关闭或释放表单时,它们也会

13、随之关闭。“属性”窗口(chungku)中,对象的Control Source ( 控件的数据源 ) 属性与数据环境中的所有字段相连。第21页/共103页第二十一页,共104页。 1)数据(shj)环境常用属性如下: AutoOpenTables:当打开或运行表单时,控制是否打开数据(shj)环境中的表或视图,默认值为“真”。 AutoCloseTables:当关闭或释放表单时,控制是否关闭由数据(shj)环境指定的表或视图,默认值为“真”。 InitialSelectedAlias:运行表单时选定的表或视图,如果没有指定,在运行时首先加到“数据(shj)环境”中的临时表最先被选中。第22页/

14、共103页第二十二页,共104页。 2)启动数据环境设计(shj)器 利用数据环境设计(shj)器能可视化地创建、修改表单的数据环境。打开数据环境设计(shj)器的方法:启动“表单设计(shj)器”后,在选择“显示”菜单中的“数据环境”命令,打开数据环境设计(shj)器窗口。第一次打开数据环境设计(shj)器窗口时,要求打开一个数据表。可以向数据环境设计(shj)器窗口添加、移去数据表或者视图。此外,还可在表单的右键快捷菜单中选择“数据环境”命令和“表单设计(shj)器”工具栏中选择“数据环境”按钮。第23页/共103页第二十三页,共104页。 3)向数据环境中添加、移去数据表或视图 在数据环

15、境设计(shj)器窗口中右击,从弹出的快捷菜单中可以选择“添加”(如图6-12所示),来添加表或视图;选中已经添加进数据环境的表或视图,右击,从弹出的快捷菜单中可以选择“移去”,可以移去表或视图。第24页/共103页第二十四页,共104页。 4)设置数据表之间的关系 如果两张数据表已经建立永久关系,则将这两张数据表添加进数据环境时,将自动得到一个临时关系。如果添加进“数据环境”中的两张数据表事先(shxin)没有建立永久关系,可以在“数据环境设计器”中为它们设置临时关系,方法是将主表字段拖动到子表相应的索引标志上,或者使用命令代码段来实现。 第25页/共103页第二十五页,共104页。 5)直

16、接拖放数据至表单 可以将数据直接从数据环境(hunjng)拖到表单中,这样可以直观、快速得到用于处理这些数据的对象,例如,将一个字符型字段从数据环境(hunjng)拖到表单中,可以得到一个标签和文本框,用于显示提示信息和字段中的数据;将一张数据表从数据环境(hunjng)拖到表单中,可以得到一个表格。 第26页/共103页第二十六页,共104页。 6)数据环境中对象的属性设置 数据环境默认的名字叫DataEnvironment,添加进来的数据表或视图默认的名字依次为:Cursor1,Cursor2,每一个Cursor对象的Alias属性就是( jish)它所对应的数据表或视图,通过设置Curs

17、or对象的Order属性,可以指定表的主控索引。第27页/共103页第二十七页,共104页。 6. 向表单中添加控件 表单中可以(ky)有两类控件,一类是内容可以(ky)与后端的表、视图或查询中的字段或内存变量相关联的控件,称为绑定型控件;另一类是内容不与后端的表、视图或查询中的字段或内存变量相关联的控件,称为非绑定型控件。 第28页/共103页第二十八页,共104页。 不同的控件,其功能是不同的,对于(duy)某个特定的任务,我们应当选择合适的控件来完成。添加控件的方法: 1)使用“表单”菜单项中的快速表单向导添加控件。 2)由数据环境直接添加控件。 注意:字段类型与控件类型的对应关系。 3

18、)用“窗体控件”工具栏创建控件。第29页/共103页第二十九页,共104页。 7. 设置控件的必要属性及编写事件代码 1)控件的通用属性 控件的通用属性如表6-7所示。 2)设置控件的必要属性 使用代码设置对象属性一般可分为三种情况。 (1)一条语句(yj)设置一个对象的一个属性。 例如设置表单中文本框Text1的相关属性: This.Text1.Enabled = .T. & 控件有效 This.Text1.Value = DATE() & 显示当前日期 This.Text1.ForeColor = RGB(0,0,0) & 黑色文本 This.Text1.BackC

19、olor = RGB(128,128,128)& 灰色背景第30页/共103页第三十页,共104页。 (2)使用WITHENDWITH语法结构设置一个对象的多个属性。 例如同样设置文本框的上述(shngsh)4个属性,可以使用如下语句: WITH This.Text1 Enabled = .T. Value = DATE() ForeColor = RGB(0,0,0)第31页/共103页第三十一页,共104页。 BackColor = RGB(128,128,128) ENDWITH (3)使用容器对象的SETALL方法设置容器中所有对象的同一(tngy)属性。 例如为了把表格控件中

20、列对象的BackColor属性设置为红色,可以使用下列语句: Form1.Grid1.SetAll (“BackColor”, RGB(255, 0, 0 ) , “Column”)第32页/共103页第三十二页,共104页。 8. 在表单中调用对象的方法程序 在Visual FoxPro中对象一经创建,用户便可以在应用程序的任何一个地方调用这个对象的方法。调用对象方法的语法格式如下: Parent.Object.Method 例如下列语句调用方法程序来显示(xinsh)表单,并将焦点设置在文本框上:第33页/共103页第三十三页,共104页。 ThisFormSet.Form1.Show T

21、hisFormSet.Form1.Text1.SetFocus 如果用户调用的方法程序含有参数,那么所需传递给方法程序的参数必须放在方法程序名后面(hu mian)的圆括号中。例如,Form1.Show(nStyle),将参数nStyle传递给Form1的Show方法程序代码。第34页/共103页第三十四页,共104页。 9. 在表单中响应对象的事件 当用户的操作(鼠标动作或按键)激发了对象的某个事件,该事件中的过程代码将被执行。例如,当用户单击命令按钮时,命令按钮的Click事件过程代码将被执行。 事件中的过程代码也可以在程序运行时由程序调用而激活,这时事件代码就如同一般过程一样。例如我们需

22、要(xyo)在关闭表单Form1前自动执行命令第35页/共103页第三十五页,共104页。 按钮Command1的Click事件,我们可以在表单的卸载事件Destory中输入(shr)如下语句: This.Command1.Click() 10. 保存、修改、运行和关闭表单第36页/共103页第三十六页,共104页。6.3.2 设计(shj)一个简单的表单 下面我们(w men)使用表单设计器来设计一个只显示一行提示文字的表单实例。我们(w men)假定要在表单上显示的这行文字是“Visual FoxPro 程序设计”,并假定我们(w men)要求的表单大小为宽300像素,高150像素。第37

23、页/共103页第三十七页,共104页。 1. 进入表单设计器 单击Visual FoxPro系统主界面( jimin)工具栏上的“新建”按钮,在“新建”对话框中选择文件类型为表单,再选择“新建文件”,就可以进入表单设计器。第38页/共103页第三十八页,共104页。 2. 设置表单属性 如果进入表单设计器后属性窗口并未显示出来,只需要把鼠标指向表单后右击,从弹出的快捷(kui ji)菜单中选择“属性”,属性窗口就会出现。 在属性窗口中找到表单的Width属性,将其设置为300,再单击 按钮确认,如图6-13所示。第39页/共103页第三十九页,共104页。 3. 放入控件 如果在表单设计器界面

24、上看不到表单控件工具栏,可以单击“显示”菜单,选择(xunz)“表单控件工具栏”来调出表单控件工具。 表单控件工具栏上的标签按钮,用来显示文本信息。我们单击这一工具,然后在表单上用鼠标拖出一个矩形区域,表示标签控件占据的位置,就将一个标签控件放置到了表单上,如图6-14所示。 一般情况下,这个标签会有一个默认的名字,叫“Label1”,它显示的内容也是“Label1”。第40页/共103页第四十页,共104页。 4. 设置标签属性 决定标签显示内容(nirng)的是它的Caption属性。 现在已经有两个对象:表单Form1和标签Label1,要对标签进行属性设置的话,先要在属性窗口上部的组合

25、框中选择对象为标签Label1,然后找到标签的Caption属性,将其设置为“Visual FoxPro 程序设计”这样一个字符串,过程如图6-15所示。第41页/共103页第四十一页,共104页。 5. 保存并运行表单 表单设计完成后,单击系统工具栏上的存盘按钮,在存盘对话框中指定表单保存的位置和名称,即可将表单文件保存起来,表单文件的扩展名是“.scx”,我们输入表单存盘的主文件名为:exam1。存盘后,单击工具栏上的运行按钮,就可以运行表单,也可以用命令: DO FORM表单文件名 来执行(zhxng)表单。 表单exam1运行后的界面如图6-15所示。第42页/共103页第四十二页,共

26、104页。 6. 修改表单 已经保存好的表单可以(ky)再次打开进行修改,方法是直接打开表单文件或是在命令窗口中输入命令: MODIFY FORM表单文件名 这样就会再次进入表单设计器,用户可以(ky)对原有的表单进行修改。第43页/共103页第四十三页,共104页。6.4 6.4 表单控件设计(shj) (shj) 6.4.1 输出类控件 1标签(bioqin) 标签(bioqin)(Label)是一个图形控件,常用于显示文本信息。标签(bioqin)在表单设计中常用于显示提示信息或说明信息。如果要在表单上创建一个标签(bioqin)控件,只需要单击控件工具栏中的标签(bioqin)按钮,然

27、后在表单中合适的位置单击即可。一个标签(bioqin)最多可容纳256个字符。第44页/共103页第四十四页,共104页。 2. 图象、线条与形状 创建图象(Image)的步骤如下:在表单上创建一个图象控件,在属性窗口选定Picture属性,并通过文本框右侧的对话按钮选定一个图象,该图象即显示在图象控件处。 线条控件(Line)用于在表单上画各种类型的线条,包括(boku)斜线、水平线和垂直线。第45页/共103页第四十五页,共104页。 形状控件(Shape)是可以显示矩形、圆或椭圆的图形控件,这些图形不能直接修改。但是,因为形状控件包括很多其他控制具有的属性、事件和方法,所以形状控件能响应

28、事件,并且在运行时可动态地修改。Curvature 属性决定显示什么样的图形,它的变化范围是 0 到 99。0 表示无曲率,用来创建矩形;99 表示最大曲率,创建圆和椭圆。 例题6.1设计(shj)如图6-16所示的应用程序封面。第46页/共103页第四十六页,共104页。6.4.2 输入(shr)类控件 1.文本框 文本框(Text)是一类基本控件,是最常用的控件。主要用于数据表中某些数据的输入输出或编辑,以及从窗口给内存变量赋值等操作。文本框有自己的数据源,通常是以表的一个(y )非备注字段或一个(y )内存变量作为自己的数据源。 1)文本框的常用属性、事件和方法 如果设置了文本框的Con

29、trolSource属性,则显示在文本框中的值将保存在文本框的Value属性中,同时保存在ControlSource属性指定的变量或字段中。 文本框的常用属性如表6-11所示。 第47页/共103页第四十七页,共104页。 2)文本框生成器 文本框生成器是设置属性(shxng)的向导,使用生成器为控件设置常用的属性(shxng)非常方便。 3)在文本框中接受用户密码 在应用程序设计中,经常需要获得某些安全信息,如密码。这时需要设置文本框的passwordchar属性(shxng)为“*”或其它一些字符,用文本框的Value和Text来接收这一信息,而不在屏幕上显示其实际内容。参见例题6.8,如

30、图6-30所示。 第48页/共103页第四十八页,共104页。 2. 列表框 列表框(List) 主要用来显示选择项,并且维护其ControlSource属性所结合的数据。列表框控件可同时显示图形与项目文字,可以多重选择,并具有移动项目位置的功能。 列表框和下拉列表框(即Style属性为2的组合框控件)中包含(bohn)了一些选项和信息的可滚动列表。列表框中任何时候都能看到多个项,下拉列表框中只能看到一个项,可单击向下按钮来显示可滚动的下拉列表框。第49页/共103页第四十九页,共104页。 1)列表框的常用属性和方法程序 列表框的Value属性可以是数值型,也可以是字符型,默认值为数值型。如

31、果(rgu)RowSource是字符型值,并且要让Value属性反映列表中选定的字符串,则应将Value属性设置为空字符串。 (1)列表框的常用属性 常用列表框的属性如表6-13所示。 第50页/共103页第五十页,共104页。 (2)列表框中常用的方法有: AddItem:当RowSourceType属性为0(默认值)或1时,给列表框添加一项 。 RemoveItem:当RowSourceType属性为0(默认值)或1时,从列表框中删除一项。 Requery:当RowSource中的值改变时更新列表。与其他控件不同(b tn),使用列表框的Refresh方法无法刷新列表框数据源。 第51页/

32、共103页第五十一页,共104页。 2)列表框中的数据源类型 列表框中的数据源类型由RowSourceType属性决定,该属性有以下几种常用设置: (1)RowSourceType为0:无数据源,需通过编程向列表框中添加项。 (2)RowSourceType为1:可用RowSource属性指定多个要在列表框中显示的值。 (3)RowSourceType为2:别名,可以在列表框中包含(bohn)打开表的一个或多个字段的值。字段的个数由列表框的ColumnCount属性决定。第52页/共103页第五十二页,共104页。 如果ColumnCount为0或1,则列表框将显示表中的第一个字段;如果Col

33、umnCount为2,列表框将显示表中的前两个字段;依次类推(litu)。 (4)RowSourceType为3:SQL语句,在RowSource属性中应包含一个SELECT-SQL查询语句。 (5)RowSourceType为4:查询,可以将查询的结果填充到列表框,查询是在查询设计器中设计的。第53页/共103页第五十三页,共104页。 (6)RowSourceType为5:数组,即列表框中的项取自数组。RowSource属性可以是表单或表单集中的数组属性,也可以是应用查询中的其它(qt)数组属性。 (7)RowSourceType为6:字段,列表项是一个字段或用逗号分隔的一系列字段。与Ro

34、wSourceType值为2不同,此时,允许字段不按表中的顺序来显示。 (8)RowSourceType为7:文件,将用当前目录下的文件填充列表,并允许选择不同的驱动器和目录。 此时RowSource属性可设置为列表中显示的文件类型。第54页/共103页第五十四页,共104页。 3)列表框的基本操作 列表框包含以下基本操作: (1)使用列表框的计数属性:ListCount。 引用(ynyng)Listcount属性可得到列表框中的项目总数。如要将List1中的列表项数目显示在 Text1文本框中,只需在表单的Init事件中添加以下代码: This.text1.value=This.list1.

35、listcount第55页/共103页第五十五页,共104页。 (2)访问列表框中的某一项可使用Listn (3)添写列表框中最顶端的数据项 若用户需将列表框中的最顶端数据项设置为默认选择项,则可使用列表框的Topindex属性,在列表框的Init事件(shjin)中增加以下代码: var=This.Topindex This.Value=This.Listvar 或 This.Value=This.ListThis.Topindex第56页/共103页第五十六页,共104页。 (4)确认某一项被选中可使用Selected属性。例如,选中第二项,其代码为: Thisform.List1.Sel

36、ected2=.T. 4)列表框中多选项的选择 在缺省情况下,一次只能选定列表框中的一项,但通过修改MultiSelect属性为真(.T.),使得(sh de)用户能够同时选择列表框中的多个列表项。第57页/共103页第五十七页,共104页。 例题6.4一个列表框列出一组学生信息,选择其中的多名学生,用另一个列表框显示所选的学生名单。允许(ynx)重选,能正常结束。如图6-23所示。 操作步骤如下: 1新建表单Form1。 2打开表单的“数据环境设计器”窗口,将课程表xsda.dbf添加到表单中。 3在表单中的合适位置分别添加如图6-22所示的2个列表框控件list1、list2,2个命令按钮

37、,其部分属性值的设置如表6-13示。 第58页/共103页第五十八页,共104页。 4在表单form1的 Init事件(shjin)的代码窗口输入代码: thisform.list1.columncount=5 &五列,有几个字段就有几列 5在列表框List1的Interactivechange事件(shjin)的代码窗口输入代码: ThisForm.List2.AddItem(This.Value) Thisform.List2.Requery 6在命令按钮Command1的Click事件(shjin)的代码窗口输入代码: 第59页/共103页第五十九页,共104页。 for n=T

38、hisForm.List2.Listcount to 1 step -1 ThisForm.List2.RemoveItem(n) endfor 7在命令按钮Command2的Click事件的代码窗口输入(shr)代码: ThisForm.Release 8保存表单。第60页/共103页第六十页,共104页。 图6-23 列表框应用示例的设计(shj)界面 图6-23 列表框应用示例运行(ynxng)结果 第61页/共103页第六十一页,共104页。 3. 组合框 组合框(Combo) 兼有列表框与文本框的功能,其功能和列表框类似,不同之处是列表框任何时候都显示(xinsh)它的列表,而组合框

39、平时只显示(xinsh)一项,当用户单击它的向下按钮后才显示(xinsh)下拉列表。一般当选项很少时,用组合框,当选项较多时,用列表框。 组合框和列表框的主要区别在于:第62页/共103页第六十二页,共104页。 (1)对于组合框来说,通常只有一个条目是可见的。用户可以单击组合框上的下拉箭头按钮打开条目列表,以便从中选择。 (2)组合框不提供多重选择的功能,没有(mi yu)MultiSelect属性。 (3)组合框有两种形式:下拉组合框(Style属性为0)和下拉列表框(Style属性为2)。对下拉组合框,用户既可以从列表中选择,也可以在编辑区输入。对下拉列表框,用户只可从列表中选择。第63

40、页/共103页第六十三页,共104页。 组合框又分为下拉组合框(组合框的Style属性值为)和下拉列表框(组合框的Style属性值为2),前者既可以在列表中选项,也可以在组合框中输入一个值,而后者和列表框一样只能在列表中选项。组合框的常用属性如表6-15所示。 2)将数据项添加到下拉组合框中 用户(yngh)在使用列表框和下拉列表框时,只能选择其中的选项,不能交互输入新数据或进行编辑,而下拉组合框却可以。第64页/共103页第六十四页,共104页。 为了使用户能够直接在下拉组合框中输入数据,应进行( jnxng)如下设置: (1)设置组合框的以下属性值: Style属性为:0 RowSourc

41、eType属性为:0(无) RowSource属性为:(无) (2) 在组合框的Valid事件的方法程序中使用AddItem方法添加所需的文本,代码为: This.AddItem(This.Text) 第65页/共103页第六十五页,共104页。 例题6.5学生档案表xsda.dbf中,通过下拉组合框输入学生的学号查询并显示学生的姓名、性别(xngbi)、出生日期、专业班级和简历等信息。如图6-25所示。图6-25 组合(zh)框应用示例的运行结果 第66页/共103页第六十六页,共104页。 操作步骤如下: 1新建表单Form1。 2按图在表单中加入五个文本框、1个组合框Combo1,1个命

42、令按钮Command1和1个标签label1,如图6-24所示,其部分属性如表6-16所示。 3打开(d ki)表单的“数据环境设计器”窗口,将学生档案表xsda.dbf添加到表单中。 4在“数据环境设计器”窗口,将学生档案表xsda.dbf中的字段姓名、性别、出生日期、专业班级和简历分别拖到表单中的合适位置,第67页/共103页第六十七页,共104页。 即分别添加了如图6-24所示的标签(bioqin)控件和对应的文本框控件、编辑框控件,其中文本框和编辑框的ReadOnly属性均设置为.T. 5在表单Form1的Init事件的代码窗口输入代码: *让表单运行后,文本框、编辑框的值显示为空 g

43、o bottom skip ThisForm.Refresh 第68页/共103页第六十八页,共104页。 6在组合框Combo1的InteractiveChange事件的代码窗口输入(shr)代码: locate for xsda.学号=This.value ThisForm.Refresh 7在命令按钮Command1的Click事件的代码窗口输入(shr)代码: thisform.release 8保存表单。第69页/共103页第六十九页,共104页。 4编辑框 编辑框(Edit)与文本框一样,可以接受数据(shj)的输入/输出,但编辑框只能接受字符型数据(shj)。编辑框一般用来编辑长

44、字段或备注型字段,允许自动换行,并能使用箭头键、PageUp和PageDown键以及滚动条来浏览文本。 )编辑框常用属性 编辑框的属性与文本框类似,表6-17列出了编辑框常见的属性。第70页/共103页第七十页,共104页。 例题6.6 设计一表单如图6-26所示,使用编辑框修改学生档案表“xsda.dbf”的“简历”字段的内容。在文本框中输入学生的学号,若未找到该学号,则给出相应(xingyng)的提示信息,让用户重新输入;若找到,则显示学生姓名、班级和简历,单击“修改”按钮可以修改简历。图6-26编辑框应用(yngyng)示例 第71页/共103页第七十一页,共104页。 微调控件(Spi

45、nner) 微调控件(Spinner)可以接收给定范围内的数值输入。除了能够用鼠标单击控件右边向上和向下的箭头来增减其当前值外,还能像编辑框那样用键盘直接输入数值数据。 )微调控件的常用属性(shxng) 微调控件的常用属性(shxng)如表6-19所示。 )微调非数值型的值 微调控件值一般为数值型,可利用微调控件和文本框来微调多种类型的数值。第72页/共103页第七十二页,共104页。 例题6.7 如图6-29所示,设计控件使用户(yngh)可微调一定范围的日期。图6-29 微调控件使用实例(shl)设计界面和运行结果 第73页/共103页第七十三页,共104页。 操作步骤如下: 1在表单上

46、放置一个标签Label1,设置(shzh)其Caption属性为“日期”。 2在表单上放置一个文本框Text1,设置(shzh)其Format属性为“D”(数据类型为日期型)。 3在表单上放置一个微调控件Spinner1,调整微调控件的大小,使其只显示按钮。用户可使用Shift + 箭头键小间距地调整按钮的高度和宽度,使其与文本框相配。 第74页/共103页第七十四页,共104页。 4在表单的Init事件中编写如下代码,使文本框显示系统当天的日期(rq): This.Text1.Value = Date() 5在微调控件的UpClick事件中编写如下代码,表示当单击向上按钮时文本框显示的日期(

47、rq)减1: Thisform.Text1.Value = Thisform.Text1.Value-1 Thisform.refresh第75页/共103页第七十五页,共104页。 6在微调控件的DownClick事件中编写如下代码(di m),表示当单击向下按钮时文本框显示的日期加1: Thisform.Text1.Value = Thisform.Text1.Value+1 Thisform.refresh第76页/共103页第七十六页,共104页。6.4.3 控制(kngzh)类控件 命令按钮 命令按钮控件(Command) 主要用来控制程序代码的执行、操作。在表单中添加具有不同功能的

48、命令按钮,供用户选择各种不同的操作。如关闭表单、在表中移动记录( jl)指针、保存编辑内容、运行查询、运行报表等。只要在命令按钮的Click事件中输入相应的操作代码,当用户单击命令按钮时,即可触发Click事件,执行Click中的代码来完成指定操作。第77页/共103页第七十七页,共104页。 1)命令按钮控件功能 命令按钮典型地用来(yn li)启动某个事件代码、完成特定功能,如关闭表单、移动记录指针、打印报表等 2)命令按钮控件常用属性 在表单中可以建立一个命令按钮控件用于执行命令。一般都将特定操作代码放置在命令按钮的click事件中,对命令按钮的使用最重要的是编写Click事件代码。设计

49、时经常需要设置命令按钮属性。命令按钮常用属性如表6-20所示。 第78页/共103页第七十八页,共104页。 )设置命令按钮的访问键。 访问键可使用户在表单中通过按ALT+访问键来选择一个控件。指定控件的访问键的方法是:在控件的Caption属性中,在作为访问键的字母前键入一个反斜杠和一个小于符号()。例如(lr),设置命令按钮Exit的访问键为X,只需在其Caption属性中输入: EXIT 用户可按下ALT+X键快速地选择该命令。第79页/共103页第七十九页,共104页。 例题(lt)6.8 设计一个如图6-30所示的密码输入窗口,要求最多允许输入3次密码。 图6-30 命令(mng l

50、ng)按钮应用设计界面 第80页/共103页第八十页,共104页。 操作步骤如下: 1创建一个表单,然后在其中创建标签和文本框各1个,命令按钮2个。 2属性设置(shzh)如表6-21所示。 3Form1的Load事件代码编写如下: public i & i用于计算输入次数 i=0 4Command1的Click事件代码编写如下 i=i+1第81页/共103页第八十一页,共104页。 IF THISFORM.Text1.Value=888888 & 文本框输入值与888888(预置的密码(m m))比较 THISFORM.Release & 本表单从内存释放 ELSE

51、IF i3 & 允许输入3次 MESSAGEBOX(密码(m m)错,请重新输入!) THISFORM.Text1.Value= & 为重新输入清空文本框 THISFORM.Text1.Setfocus & 使文本框获得焦点,就是使光标在其中闪烁 第82页/共103页第八十二页,共104页。 ELSE MESSAGEBOX(密码(m m)错,禁止进入系统!) THISFORM.Release ENDIF 5Command2的Click事件代码编写如下 THISFORM.Release第83页/共103页第八十三页,共104页。 .命令按钮组 命令按钮组(Commandg

52、roup)控件是表单上的一种容器,它可以包含若干个命令按钮,命令按钮组控件是命令按钮的集合。如果(rgu)表单上有多个命令按钮,可以考虑使用命令按钮组。使用命令按钮组可以使代码更整洁,界面更加整齐。命令按钮组与组内的各个命令按钮都有自己的属性、事件和方法。 )命令按钮组属性 常用命令按钮组属性如表6-22所示。 第84页/共103页第八十四页,共104页。 )设置命令按钮组中各按钮的属性 在表单设计器中,既可设置命令按钮组的属性,也可以设置其中各命令按钮的属性。有两种方法可对单个按钮的属性进行编辑。 (1) 先用鼠标选择命令组,再单击右键选择“编辑”选项,然后单击命令组中任何一个按钮,再单击右

53、键,选择“属性”选项。 (2) 用鼠标选择命令组,再单击右键选择“属性”选项,然后在“属性”窗口(chungku)上部的对象下拉框中选择相应的按钮。第85页/共103页第八十五页,共104页。 )命令按钮组生成器 Click事件的判别方法: 例如图6-34所示,Commandgroup1的Click事件代码(di m)编写如下: DO CASE CASE THIS.Value =1 & 单击Command1命令按钮(下页)返回.T. IF recno( )1 & 防止上移出界 SKIP -1 ENDIF THISFORM.Refresh CASE THIS.Value =3 &

54、amp; 单击Command3命令按钮(退出)返回(fnhu).T. THISFORM.Release & 表单从内存释放 ENDCASE第87页/共103页第八十七页,共104页。 例题6.10设计一个浏览学生所在班级基本情况的程序,如图6-35所示。学生基本情况包括:学号、姓名、班级。设计一个包含(bohn)4个按钮的命令按钮组,1个独立的命令按钮,分别代表对记录指针的操作,以改变显示内容,从左至右分别表示:“第一条记录”、“上一条记录”、“下一条记录”、“最后一条记录”和“关闭”。 第88页/共103页第八十八页,共104页。 图6-35 命令(mng lng)按钮组应用示例操作

55、步骤: 参考书上153页。第89页/共103页第八十九页,共104页。 复选框 复选框(Check)为表单添加“微调”控件,定义其主要属性:允许同时(tngsh)选择多项,所以复选框可以在表单中独立存在,选项按钮只能存在于它的容器选项按钮组中。复选框主要反映某些条件是否成立,用于选择取值为“真”或“假”的一种现象。可以单击鼠标左键改变其值。复选框控件是一种数据绑定型控件,在数据编辑或条件选择等方面有广泛的应用。第90页/共103页第九十页,共104页。 复选框的值 Value属性:0或.F.表示清除;1或.T.表示选定;2表示灰色状态(zhungti)。其中数字为默认值。 选项按钮的Value

56、属性:1表示选定,0表示未选定。 选项按钮组(Optiongroup)的Value属性:表明被选定按钮的序号,默认为1。例如第2个按钮被选定时Value值为2。第91页/共103页第九十一页,共104页。 例题6.11 设计一个(y )能编辑或浏览关于学生信息的4个数据库表的对话框,界面要求如图6-37所示,运行结果如图6-39所示。图6-37 选表编辑(binj)或浏览窗口 第92页/共103页第九十二页,共104页。6.4.4 容器(rngq)类控件 表格 表格(Gird) 类似浏览窗口,它具有网格结构,是将数据以表格形式表示出来的一种控件、容器。有垂直滚动条和水平滚动条,可以同时操作和显示多行数据。表格提供了一个全屏幕输入输出数据表记录的方式,一个表格由一列或若干列组成,每一列可显示表的一个字段,列由列标题(biot)和列控件组成。列标题(biot)的默认值为显示字段的字段名,允许修改。每一列必须设置一个列控件 第93页/共103页第九十三页,共10

温馨提示

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

评论

0/150

提交评论