《面向对象的程序设计概念优秀课件.ppt》由会员分享,可在线阅读,更多相关《面向对象的程序设计概念优秀课件.ppt(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、面向面向对对象的程序象的程序设计设计概念概念第1页,本讲稿共18页7.1面向对象的基本概念-对象和类 1对象对象1)对象)对象对象(对象(Object)是反映客观事物属性及行为特征的描述。每个对象都具有描述它的特征的属性,)是反映客观事物属性及行为特征的描述。每个对象都具有描述它的特征的属性,及附属于它的行为。对象把事物的属性和行为封装在一起,是一个动态的概念。对象是面向对象编及附属于它的行为。对象把事物的属性和行为封装在一起,是一个动态的概念。对象是面向对象编程的基本元素,是程的基本元素,是“类类”的具体实例。的具体实例。2)对象的属性)对象的属性窗口的标题及窗口的大小;窗口的标题及窗口的大
2、小;窗口的前景和背景颜色;窗口的前景和背景颜色;窗口中所显示信息的内容及格式;窗口中所显示信息的内容及格式;窗口中提供了哪些控件;窗口中提供了哪些控件;窗口中每个控件在窗口的位置;窗口中每个控件在窗口的位置;窗口中每个控件的大小;窗口中每个控件的大小;窗口中的控件应如何操作。窗口中的控件应如何操作。另外,在另外,在Visual FoxPro应用程序中,命令按钮也可以看成对象,具有以下属性和行为特征:应用程序中,命令按钮也可以看成对象,具有以下属性和行为特征:命令按钮在窗口的位置;命令按钮在窗口的位置;命令按钮的标题及命令按钮的大小;命令按钮的标题及命令按钮的大小;按动命令按钮进行什么操作。按动
3、命令按钮进行什么操作。2类类所谓类所谓类(Class),就是一组对象的属性和行为特征的抽象描述。或者说,类是具有共同属性、共同操作性质的,就是一组对象的属性和行为特征的抽象描述。或者说,类是具有共同属性、共同操作性质的对象的集合。对象的集合。1)基类)基类基类又可以分成容器类和控件类。基类又可以分成容器类和控件类。容器类(容器类(Containers)可以容纳其他对象,并允许访问所包含的对象。)可以容纳其他对象,并允许访问所包含的对象。控件类不能容纳其他对象,它没有容器类灵活。控件类不能容纳其他对象,它没有容器类灵活。2)类的特性)类的特性类具有继承性、封装性和多态性等特性。类具有继承性、封装
4、性和多态性等特性。返回第2页,本讲稿共18页7.17.1面向对象的基本概念面向对象的基本概念-属性、事件和方法属性、事件和方法1属性属性属性(属性(Attribute)是用来描述对象特征的参数。)是用来描述对象特征的参数。属性是属于某一个类的,不能独立于类而存在。派生出的新类将继承基类和父类的全部属性。在属性是属于某一个类的,不能独立于类而存在。派生出的新类将继承基类和父类的全部属性。在Visual FoxPro系统中,各种对象拥有系统中,各种对象拥有70多个属性。对象的属性可以在设计对象时定义,也可以在对象运行时进行多个属性。对象的属性可以在设计对象时定义,也可以在对象运行时进行设置。设置。
5、2事件事件事件(事件(Event)是每个对象可能用以识别和响应的某些行为和动作。为了使对象在某一事件发生时)是每个对象可能用以识别和响应的某些行为和动作。为了使对象在某一事件发生时能够做出用户所需要的反映,就必须为这个事件编写相应的程序代码来实现特定的目标。为一个对能够做出用户所需要的反映,就必须为这个事件编写相应的程序代码来实现特定的目标。为一个对象的某个事件编写代码后,应用程序运行时,一旦该事件发生,便激活相应代码开始执行,如果该象的某个事件编写代码后,应用程序运行时,一旦该事件发生,便激活相应代码开始执行,如果该事件不发生,则这段代码就不会被执行。没有编写代码的事件,即使事件发生也不会有
6、任何反映。事件不发生,则这段代码就不会被执行。没有编写代码的事件,即使事件发生也不会有任何反映。在在Visual FoxPro系统中,对象可以响应系统中,对象可以响应50多种事件。多数情况下,事件是通过用户的操作行为多种事件。多数情况下,事件是通过用户的操作行为引发的,当事件发生时,将执行包含在事件过程中的全部代码。引发的,当事件发生时,将执行包含在事件过程中的全部代码。3方法方法方法(方法(Method)是附属于对象的行为和动作,是由)是附属于对象的行为和动作,是由Visual FoxPro代码组成的。可以执行某一特代码组成的。可以执行某一特定动作的特殊的定动作的特殊的“过程过程”或或“函数
7、函数”,方法与事件有相似之处,都可以完成不同任务。但在不同程序中,方法与事件有相似之处,都可以完成不同任务。但在不同程序中,同一个事件必须根据需要编写不同的代码,从而完成不同任务。而方法通常是同一个事件必须根据需要编写不同的代码,从而完成不同任务。而方法通常是Visual FoxPro系统已系统已经编写好的,无论在哪个程序中,任何时候调用都完成统一任务。当然,如果需要,用户可以自己经编写好的,无论在哪个程序中,任何时候调用都完成统一任务。当然,如果需要,用户可以自己编写代码替换系统提供的方法代码。编写代码替换系统提供的方法代码。Visual FoxPro提供提供100多个内部方法供不同对象调用
8、。多个内部方法供不同对象调用。返回第3页,本讲稿共18页7.37.3创建与管理表单创建与管理表单-创建表单创建表单 4运行表单运行表单(4)在命令窗口输入命令:)在命令窗口输入命令:DO FORM 返回第4页,本讲稿共18页7.37.3创建与管理表单创建与管理表单-表单属性、事件和方法表单属性、事件和方法 1常用的表单属性常用的表单属性表单属性大约有表单属性大约有100个,但绝大多数很少用到。个,但绝大多数很少用到。表表7-2 常用表单属性常用表单属性返回属 性描 述默 认 值AlwaysOnTop指定表单是否总是位于其他打开窗口之上.F.AutoCenter指定表单初始化时是否自动在Visu
9、al FoxPro主窗口内居中显示.F.BackColor指明表单窗口的颜色255,255,255BorderStyle指定表单边框的风格3CaptionCaption指明显示在表单标题栏上的文字指明显示在表单标题栏上的文字Form1Form1ClosableClosable指定是否可以通过单击指定是否可以通过单击“关闭关闭”按钮或双击控制菜单框来关闭表单按钮或双击控制菜单框来关闭表单1 1DataSessionDataSession指定表单里的表是在默认的全局能访问的工作区打开指定表单里的表是在默认的全局能访问的工作区打开1 1MaxButtonMaxButton确定表单是否有最大化按钮确定
10、表单是否有最大化按钮.T.T.MinButtonMinButton确定表单是否有最小化按钮确定表单是否有最小化按钮.T.T.Movable确定表单是否能够移动.T.Scrollbars指定表单滚动条的类型:0(无)、1(水平)、2(垂直)、3(即水平又垂直)0WindowState指明表单的状态:0(正常)、1(最小化)、2(最大化)0WindowType指定表单是模式表单还是非模式表单0第5页,本讲稿共18页7.37.3创建与管理表单创建与管理表单-表单属性、事件和方法表单属性、事件和方法 2常用方法常用方法(1)Release方法:将表单从内存中释放(清除)。比如表单有一个命令按钮,如果希
11、望单击该命令按钮时关闭表单,就方法:将表单从内存中释放(清除)。比如表单有一个命令按钮,如果希望单击该命令按钮时关闭表单,就可以将该命令按钮的可以将该命令按钮的Click事件代码设置为事件代码设置为ThisForm.Release。(2)Refresh方法:重新绘制表单或控件,并刷新它的所有值。当表单被刷新时,表单上的所有方法:重新绘制表单或控件,并刷新它的所有值。当表单被刷新时,表单上的所有控件也都被刷新。当页框被刷新时,只有活动页被刷新。控件也都被刷新。当页框被刷新时,只有活动页被刷新。(3)Show方法:显示表单。该方法将表单的方法:显示表单。该方法将表单的Visible属性设置为属性设
12、置为.T.,并使表单成为活动对象。,并使表单成为活动对象。(4)Hide方法:隐藏表单。该方法将表单的方法:隐藏表单。该方法将表单的Visible属性设置为属性设置为.F.。(5)SetFocus方法:让控件获得焦点,使其成为活动对象。如果一个控件的方法:让控件获得焦点,使其成为活动对象。如果一个控件的Enabled属性值或属性值或Visible属性值为属性值为.F.,将不能,将不能获得焦点。获得焦点。返回第6页,本讲稿共18页7.47.4常用控件常用控件-标签(标签(LabelLabel)标签是用以显示文本的图形控件,被显示的文本在标签是用以显示文本的图形控件,被显示的文本在Caption属
13、性中指定,称为标题文属性中指定,称为标题文本。标签的标题文本不能在屏幕上直接编辑修改,但可以在代码中通过重新设置本。标签的标题文本不能在屏幕上直接编辑修改,但可以在代码中通过重新设置Caption属性属性间接修改。标签标题文本最多可包含的字符数目为间接修改。标签标题文本最多可包含的字符数目为256。标签具有自己的一套属性、方法和事件,能够响应绝大多数鼠标事件。标签具有自己的一套属性、方法和事件,能够响应绝大多数鼠标事件。常用的标签属性及其作用如下。常用的标签属性及其作用如下。(1)Caption属性:确定标签处显示的文本。属性:确定标签处显示的文本。(2)Visible属性:设置标签可见还是隐
14、藏。属性:设置标签可见还是隐藏。(3)AutoSize属性:确定是否根据标签上显示文本的长度,自动调整标签大小,默认值为假(属性:确定是否根据标签上显示文本的长度,自动调整标签大小,默认值为假(.F.)。)。(4)BackStyle属性:确定标签是否透明,默认值为属性:确定标签是否透明,默认值为1,即不透明。,即不透明。(5)WordWrap属性:确定标签上显示的文本能否换行,默认值为属性:确定标签上显示的文本能否换行,默认值为.F.。(6)FontSize属性:确定标签上显示文本所采用的字号。属性:确定标签上显示文本所采用的字号。(7)FontName属性:确定标签上显示文本所采用的字体。属
15、性:确定标签上显示文本所采用的字体。(8)FontColor属性:确定标签上显示文本的颜色。属性:确定标签上显示文本的颜色。(9)Alignment属性:指定标题文本在控件中显示的对齐方式。设置值为属性:指定标题文本在控件中显示的对齐方式。设置值为0,左对齐;,左对齐;设置值为设置值为1,右对齐;设置值为,右对齐;设置值为2,中央对齐。,中央对齐。返回第7页,本讲稿共18页7.47.4常用控件常用控件-命令按钮控件(命令按钮控件(CommandCommand)此按钮用于创建单个命令按钮,命令按钮用来启动某个事件代码,完成特定功能。此按钮用于创建单个命令按钮,命令按钮用来启动某个事件代码,完成特
16、定功能。如关闭表单、移动记录指针、打印报表等。如关闭表单、移动记录指针、打印报表等。常用的命令按钮属性及其作用如下。常用的命令按钮属性及其作用如下。(1)Caption属性:用于设置按钮的标题。在设置命令按钮对象的属性:用于设置按钮的标题。在设置命令按钮对象的“Caption”属性时,输入属性时,输入“”和一个快捷键字符可指定其快捷键。在表单上同时按和一个快捷键字符可指定其快捷键。在表单上同时按Alt键和快捷字符,可以完成单击此按钮的功能。键和快捷字符,可以完成单击此按钮的功能。例如,将例如,将Command1按钮的按钮的“Caption”属性设置为属性设置为“退出(退出(Q)”,在运行表单时
17、,既可以通过,在运行表单时,既可以通过Alt+Q键完成单击此按钮的作用。该属性适用于绝大多数控件。键完成单击此按钮的作用。该属性适用于绝大多数控件。(2)Enabled属性:指定表单或控件能否响应由用户引发的事件。默认值为属性:指定表单或控件能否响应由用户引发的事件。默认值为.T,即对象是有效的,能被,即对象是有效的,能被选择,能响应用户引发的事件。选择,能响应用户引发的事件。Enabled属性使得用户(程序)可以根据应用的当前状态随时决定一个对象是有效的还属性使得用户(程序)可以根据应用的当前状态随时决定一个对象是有效的还是无效的,也可以限制一个对象的使用,如用一个无效的编辑框(是无效的,也
18、可以限制一个对象的使用,如用一个无效的编辑框(Enabled=.F.)来显示)来显示只读信息。该属性在设计和运行时可用,适用于绝大多数控件。只读信息。该属性在设计和运行时可用,适用于绝大多数控件。(3)Visible属性:指定对象是可见还是隐藏。在表单设计器中,默认值为属性:指定对象是可见还是隐藏。在表单设计器中,默认值为.T.,即对象,即对象是可见的。在程序代码中,默认值为是可见的。在程序代码中,默认值为.F.,即对象是隐藏的。但一个对象即使是隐藏的,即对象是隐藏的。但一个对象即使是隐藏的,在代码中仍可以访问它。该属性在设计和运行时可用,适用于绝大多数控件。在代码中仍可以访问它。该属性在设计
19、和运行时可用,适用于绝大多数控件。(4)Piction属性:定义图形化按钮的面版图型。属性:定义图形化按钮的面版图型。返回第8页,本讲稿共18页7.47.4常用控件常用控件 -文本框控件(文本框控件(TextText)文本框也是最常用的控件,使用文本框能够进行多种类型数据的输入和输出。文本框也是最常用的控件,使用文本框能够进行多种类型数据的输入和输出。文本框的主要应用是对表中非备注字段中的数据进行显示和编辑,这需要将文本框的文本框的主要应用是对表中非备注字段中的数据进行显示和编辑,这需要将文本框的ControlSource属性设置成表的某个属性设置成表的某个字段。运行表单时,文本框显示当前记录
20、的字段。运行表单时,文本框显示当前记录的ControlSource属性所指定的字段的数据,并将用户修改后的数据保存到字段中,属性所指定的字段的数据,并将用户修改后的数据保存到字段中,同时将改变文本框的同时将改变文本框的Value属性值。属性值。可以控制向文本框中输入数据的格式。如果是字符型数据,可用可以控制向文本框中输入数据的格式。如果是字符型数据,可用InputMask属性设置对输入字符的限制。如果是逻辑型数据,把属性设置对输入字符的限制。如果是逻辑型数据,把InputMask属性属性设置为设置为“Y”,文本框中只能接受用户键入的,文本框中只能接受用户键入的“Y”或或“N”,而不接受输入,而
21、不接受输入“T”或或“F”。对于日期型数据,可用。对于日期型数据,可用 Century属性设置年份的前两个数属性设置年份的前两个数字是否显示。字是否显示。常用的文本框属性和事件如下。常用的文本框属性和事件如下。(1)ControlSource属性:利用该属性为文本框指定一个字段或内存变量。运行时,文本框首先显示该变量的内容。而用户对文本框的编辑结果,也属性:利用该属性为文本框指定一个字段或内存变量。运行时,文本框首先显示该变量的内容。而用户对文本框的编辑结果,也会最终保存到该变量中。会最终保存到该变量中。(2)Value属性:返回文本框的当前内容。对文本框属性:返回文本框的当前内容。对文本框V
22、alue属性的设置决定了运行表单时,在文本框中显示的数据属性的设置决定了运行表单时,在文本框中显示的数据的值和类型。文本框中的数据可以是数值、字符、日期或逻辑型的。如果设计表单时未设置的值和类型。文本框中的数据可以是数值、字符、日期或逻辑型的。如果设计表单时未设置Value属性值,则运行属性值,则运行表单时默认输入的是字符型数据。表单上文本框控件的长度限制了输入到文本框中的字符型数据或数值型数据的长表单时默认输入的是字符型数据。表单上文本框控件的长度限制了输入到文本框中的字符型数据或数值型数据的长度及大小。在文本框中输入的字符型数据或数值型数据的最大长度和大小还受相应数据类型的限制。运行表单时
23、,度及大小。在文本框中输入的字符型数据或数值型数据的最大长度和大小还受相应数据类型的限制。运行表单时,当文本框获得焦点时,用户就可修改数据,当移走焦点或按下当文本框获得焦点时,用户就可修改数据,当移走焦点或按下Enter键,就结束数据的输入,对文本框数据的修改键,就结束数据的输入,对文本框数据的修改将改变将改变Value属性值。该属性的默认值是空串,如果属性值。该属性的默认值是空串,如果ControlSource属性指定了字段或内存变量,则该属性将与属性指定了字段或内存变量,则该属性将与Controlsource属性指定的变量具有相同的数据和类型。属性指定的变量具有相同的数据和类型。(3)Pa
24、sswordChar属性:利用该属性可在文本框中接收用户密码,可以把它设置为属性:利用该属性可在文本框中接收用户密码,可以把它设置为“*”或其他的一般字符。这或其他的一般字符。这样在运行表单时,文本框的样在运行表单时,文本框的Value和和Text属性可以接收用户真正输入的信息,而在屏幕上显示的却是属性可以接收用户真正输入的信息,而在屏幕上显示的却是PasswordChar所指定的字符。这在设计登录口令框时经常用到。所指定的字符。这在设计登录口令框时经常用到。(4)Readonly属性:该属性为属性:该属性为.T.时,文本框显示为灰色,表明不可编辑其中的数据。时,文本框显示为灰色,表明不可编辑
25、其中的数据。(5)InPutMask属性:指定在一个文本框中如何输入和显示数据。属性:指定在一个文本框中如何输入和显示数据。(6)Valid事件:若要检查用户输入文本框的值,可以编写事件:若要检查用户输入文本框的值,可以编写Valid事件代码,利用代码来检查数据。事件代码,利用代码来检查数据。返回第9页,本讲稿共18页7.47.4常用控件常用控件-编辑框控件(编辑框控件(EditEdit)编辑框实际上是一个完整的字处理器,利用它能够选择、剪切、粘贴及复制正编辑框实际上是一个完整的字处理器,利用它能够选择、剪切、粘贴及复制正文;可以实现自动换行,能够有自己的垂直滚动条,可以用箭头键在正文里面移动
26、文;可以实现自动换行,能够有自己的垂直滚动条,可以用箭头键在正文里面移动光标。光标。编辑框只能输入、编辑字符型数据,包括字符型内存变量、数组元素和字段里编辑框只能输入、编辑字符型数据,包括字符型内存变量、数组元素和字段里的内容。的内容。前面介绍的有关文本框的有关属性(不包括前面介绍的有关文本框的有关属性(不包括PassWordChar、InputMask属性)属性)对编辑框同样适用。除了上述以外,编辑框常用属性还有以下几种。对编辑框同样适用。除了上述以外,编辑框常用属性还有以下几种。(1)ControlSource属性:用于指定编辑框的数据来源,在编辑框中的输入或属性:用于指定编辑框的数据来源
27、,在编辑框中的输入或修改的结果将存放在指定的数据源。修改的结果将存放在指定的数据源。(2)Readonly属性:设置用户能否修改编辑框的文本。值为属性:设置用户能否修改编辑框的文本。值为.T.时,不能编辑编辑框时,不能编辑编辑框中的内容;值为中的内容;值为.F.时,允许编辑编辑框的内容,系统默认值为时,允许编辑编辑框的内容,系统默认值为.F.。(3)ScrollBars属性:指定编辑框是否具有滚动条。当属性值为属性:指定编辑框是否具有滚动条。当属性值为0时,编辑框没有滚时,编辑框没有滚动条;当属性值为动条;当属性值为2(默认值)时,编辑框包含垂直滚动条。(默认值)时,编辑框包含垂直滚动条。返回
28、第10页,本讲稿共18页7.47.4常用控件常用控件-复选框控件(复选框控件(CheckCheck)此控件用于创建一个复选框,每个复选框都有两个状态,此控件用于创建一个复选框,每个复选框都有两个状态,如如.T.或或.F.。当处于。当处于.T.状态时,即选中此复选框,则在复选框状态时,即选中此复选框,则在复选框前面的方框中显示一个前面的方框中显示一个“”;否则,复选框内为空白。;否则,复选框内为空白。(1)Caption属性:用来指定显示在复选框旁边的文字。属性:用来指定显示在复选框旁边的文字。(2)Value属性:用来指明复选框的当前状态,属性:用来指明复选框的当前状态,Value属性的属性的
29、设置有设置有3种情况。种情况。0或或.F.,复选框呈清除(也称为未选中)状态。,复选框呈清除(也称为未选中)状态。l或或.T.,复选框呈选中状态。,复选框呈选中状态。2或或.Null.,复选框呈灰色状态。当复选框获得焦点时,复选框呈灰色状态。当复选框获得焦点时,只要用户按只要用户按+,就在复选框中输入,就在复选框中输入.NULL.,使复选,使复选框显示灰色。框显示灰色。(3)ControlSource属性:指明与复选框建立联系的数据源。属性:指明与复选框建立联系的数据源。返回第11页,本讲稿共18页7.47.4常用控件常用控件-选项组控件(选项组控件(OptionGroupOptionGrou
30、p)选项组又称为选项按钮组,是包含选项按钮的一种容器。一个选项组中往往包含若选项组又称为选项按钮组,是包含选项按钮的一种容器。一个选项组中往往包含若干个选项按钮,但用户只能从中选择一个按钮,当用户选择某个选项按钮时,该按钮即干个选项按钮,但用户只能从中选择一个按钮,当用户选择某个选项按钮时,该按钮即成为被选中状态,而选项组中的其他选项按钮,不管原来是什么状态,都变为未选中状成为被选中状态,而选项组中的其他选项按钮,不管原来是什么状态,都变为未选中状态。被选中的选项按钮中会显示一个圆点。态。被选中的选项按钮中会显示一个圆点。(1)ButtonCount属性:指定选项组中选项按钮的数目。在表单中创
31、建一个选项组时,属性:指定选项组中选项按钮的数目。在表单中创建一个选项组时,ButtonCount属性的默认值是属性的默认值是2。可以通过改变。可以通过改变ButtonCount属性的值来重新设置选项组中包属性的值来重新设置选项组中包含的选项按钮数目。含的选项按钮数目。(2)Value属性:用于指定选项组中哪个选项按钮被选中。该属性值的类型可以是数值型的,也属性:用于指定选项组中哪个选项按钮被选中。该属性值的类型可以是数值型的,也可以是字符型的。可以是字符型的。(3)ControlSource属性:指明与选项组建立联系的数据源。作为选项组数据源的字段变量或内存属性:指明与选项组建立联系的数据源
32、。作为选项组数据源的字段变量或内存变量,其类型可以是数值型或字符型。比如,变量值为数值型变量,其类型可以是数值型或字符型。比如,变量值为数值型2,则选项组中第,则选项组中第2个按钮被选中;若变个按钮被选中;若变量值为字符型量值为字符型“Option2”,则,则Caption属性值为属性值为“Option2”的按钮被选中。用户对选项组的操作的按钮被选中。用户对选项组的操作结果会自动存储到数据源变量及结果会自动存储到数据源变量及Value属性中。属性中。设置选项按钮组的最简便方法是使用选项按钮组生成器,如图设置选项按钮组的最简便方法是使用选项按钮组生成器,如图7-26所示。其中有所示。其中有3个选
33、项卡:个选项卡:“按钮按钮”选项卡用于输入按钮的个数及各个按钮的标题;选项卡用于输入按钮的个数及各个按钮的标题;“布局布局”选项卡用于选择按选项卡用于选择按钮排列的格局;钮排列的格局;“值值”选项卡用于设置选项组的选项卡用于设置选项组的ControlSource属性。属性。返回第12页,本讲稿共18页7.47.4常用控件常用控件 -计时器控件(计时器控件(TimerTimer)计时器控件可以进行计时,可以按某个时间间隔周期性地执行指定的操作。计计时器控件可以进行计时,可以按某个时间间隔周期性地执行指定的操作。计时器控件的主要属性和事件如下。时器控件的主要属性和事件如下。(1)Timer事件:即
34、计时器事件,是在时间间隔到时触发的事件。应该编写事件:即计时器事件,是在时间间隔到时触发的事件。应该编写该事件的代码,指定完成某个操作。该事件的代码,指定完成某个操作。(2)Interval属性:用于指定一个时间间隔,即一个计时器事件和下一个计时器事件之间属性:用于指定一个时间间隔,即一个计时器事件和下一个计时器事件之间的毫秒数。如果计时器有效,将以近似相等的时间间隔触发计时器事件。的毫秒数。如果计时器有效,将以近似相等的时间间隔触发计时器事件。(3)Enabled属性:若将该属性设置为属性:若将该属性设置为.T.,计时器就能在表单开始运行时启动计时,计时器就能在表单开始运行时启动计时工作。如
35、果设置工作。如果设置Enabled属性为属性为.F.,就会挂起计时器的运行;这种情况下,可以,就会挂起计时器的运行;这种情况下,可以使用表单上别的控件的某个事件(如命令按钮的使用表单上别的控件的某个事件(如命令按钮的Click事件)启动计时器的工作。事件)启动计时器的工作。计时器控件的一个特点是:在设计时,计时器在表单中是可见的,便于设计者查看计时器控件的一个特点是:在设计时,计时器在表单中是可见的,便于设计者查看和设置计时器属性和编写事件代码;在运行时,计时器不可见。计时器控件在表单上的和设置计时器属性和编写事件代码;在运行时,计时器不可见。计时器控件在表单上的位置和大小都无关紧要。位置和大
36、小都无关紧要。返回第13页,本讲稿共18页7.4常用控件常用控件-微调控件(SpinnerSpinner)微调控件常用在给定数值范围及数值间距的情况下,让用户从数值范围内微调控件常用在给定数值范围及数值间距的情况下,让用户从数值范围内通过上调或下调操作,选择一个值或直接在微调框中输入值。直接在微调框中通过上调或下调操作,选择一个值或直接在微调框中输入值。直接在微调框中输入的值应是一个数值。数值范围和数值间距都可以是整数或小数。输入的值应是一个数值。数值范围和数值间距都可以是整数或小数。常用的微调属性和事件如下。常用的微调属性和事件如下。(1)KeyboardHighValue属性:指定用户能输
37、入到微调框中的最高值。属性:指定用户能输入到微调框中的最高值。(2)KeyboardLowValbe属性:指定用户能输入到微调框中的最低值。属性:指定用户能输入到微调框中的最低值。(3)SpinnerHighValue属性:指定当用户单击向上按钮时微调控件显示的最高值。属性:指定当用户单击向上按钮时微调控件显示的最高值。(4)SpinnerLowValue属性:指定当用户单击向下按钮时微调控件显示的最低属性:指定当用户单击向下按钮时微调控件显示的最低值。值。(5)Increment属性:用户每次单击向上或向下按钮时增加或减少的值(数值间距)。属性:用户每次单击向上或向下按钮时增加或减少的值(数
38、值间距)。(6)Value属性:返回用户输入的值。属性:返回用户输入的值。(7)UpClick事件:用户单击向上按钮时响应的事件。事件:用户单击向上按钮时响应的事件。(8)DownClick事件:用户单击向下按钮时响应的事件。事件:用户单击向下按钮时响应的事件。返回第14页,本讲稿共18页7.4常用控件常用控件-列表框控件(ListList)列表框提供一组条目(数据项),用户可以从中选择一个或多个条目。一般情况下,列表框显示其中的若干条目,用户列表框提供一组条目(数据项),用户可以从中选择一个或多个条目。一般情况下,列表框显示其中的若干条目,用户可以通过滚动条浏览其他条目。可以通过滚动条浏览其
39、他条目。常用的属性如下。常用的属性如下。(1)RowSource 属性:指定列表框的条目数据源。属性:指定列表框的条目数据源。(2)RowSourceType属性:指明列表框中条目数据源的类型。属性:指明列表框中条目数据源的类型。(3)ColumnCount属性:用于确定列表框的列数。若要形成多列列表,应该设置该属性值为列表的列数。属性:用于确定列表框的列数。若要形成多列列表,应该设置该属性值为列表的列数。(4)ListCount属性:指明列表框中数据条目的数目。属性:指明列表框中数据条目的数目。(5)ControlSource属性:用户可以通过该属性指定一个字段或变量,用以保存用户从列表框中
40、选择的结果。属性:用户可以通过该属性指定一个字段或变量,用以保存用户从列表框中选择的结果。也可以使用其生成器进行设置,如图所示。也可以使用其生成器进行设置,如图所示。返回第15页,本讲稿共18页7.4常用控件-组合框控件(组合框控件(ComboCombo)组合框兼有列表框和文本框的功能。有两种形式的组合框,即下拉组合框和下拉列表框,通过更改组组合框兼有列表框和文本框的功能。有两种形式的组合框,即下拉组合框和下拉列表框,通过更改组合框的合框的Style属性来选择两者形式之一。属性来选择两者形式之一。下拉列表框与前面介绍的列表框相似,都能形成可滚动的数据项列表,并且设置方下拉列表框与前面介绍的列表
41、框相似,都能形成可滚动的数据项列表,并且设置方法也相同;两者不同之处在于,在列表框中任何时候都能看到多行数据项,而在下拉列法也相同;两者不同之处在于,在列表框中任何时候都能看到多行数据项,而在下拉列表中只能看到一行。表中只能看到一行。下拉组合框形成的也是下拉列表,但是运行表单时允许在这种下拉列表中扩充新的数据项,即下拉组合框形成的也是下拉列表,但是运行表单时允许在这种下拉列表中扩充新的数据项,即运行表单时,用户不仅可以单击下拉组合框上的向下按钮来查看数据项的列表和进行选择,还可直运行表单时,用户不仅可以单击下拉组合框上的向下按钮来查看数据项的列表和进行选择,还可直接在向下按钮左边的框中输入一个
42、新项。接在向下按钮左边的框中输入一个新项。常用的属性如下。常用的属性如下。(1)ControlSource属性:指定用户保存选择或输入值的表字段或变量。属性:指定用户保存选择或输入值的表字段或变量。(2)Colunmlines属性:指定在下拉列表框中是否显示分隔线,默认值为属性:指定在下拉列表框中是否显示分隔线,默认值为.T.,在下拉列表框中显示分,在下拉列表框中显示分隔线;如果为隔线;如果为.F.,则不显示分隔线。,则不显示分隔线。(3)RowSourceType属性:指定组合框中数据源类型。属性:指定组合框中数据源类型。(4)RowSource 属性:指定组合框中数据源的来源。属性:指定组
43、合框中数据源的来源。返回第16页,本讲稿共18页7.4常用控件常用控件-表格控件(Grid)表格控件用在表单上添加表格对象。表格是容器对象,包含多个列,每个表格列也是容器,包表格控件用在表单上添加表格对象。表格是容器对象,包含多个列,每个表格列也是容器,包含标头和控件。运行表单时,表格的显示形式与表的含标头和控件。运行表单时,表格的显示形式与表的“浏览浏览”窗口类似,可以显示和编辑行和列中窗口类似,可以显示和编辑行和列中的数据。表格及其中的每个对象都拥有自己的一组属性、事件和方法程序,通过设置它们可以使得的数据。表格及其中的每个对象都拥有自己的一组属性、事件和方法程序,通过设置它们可以使得表格
44、灵活多样。表格灵活多样。表格常用于显示和编辑表或视图中的数据,这需要把表或视图指定为表格的表格常用于显示和编辑表或视图中的数据,这需要把表或视图指定为表格的RecordSource属性(即表格属性(即表格的数据源属性)。如果没有指定表格的的数据源属性)。如果没有指定表格的RecordSource属性,在当前工作区中有一个打开的表时,那么属性,在当前工作区中有一个打开的表时,那么执行表单时将在表格中显示这个表的所有字段。设置表格的执行表单时将在表格中显示这个表的所有字段。设置表格的RecordSourceType(数据源类型)属性,可以指定(数据源类型)属性,可以指定表格中显示数据源的类型:表、
45、别名、查询或用户根据提示选定的表。表格中显示数据源的类型:表、别名、查询或用户根据提示选定的表。设计时常用的表格属性如下。设计时常用的表格属性如下。(1)ColumnCount属性:设置表格的列数。如果属性:设置表格的列数。如果ColumnCount属性设置为属性设置为1(默认值),则在运行表单时,表(默认值),则在运行表单时,表格的列数与格的列数与RecordSource属性所指定的表中字段数目相同。属性所指定的表中字段数目相同。(2)AllowAddNew属性:是否允许在属性:是否允许在RecordSource属性所指定的表中追加新记录。如果将属性所指定的表中追加新记录。如果将AllowA
46、ddNew属性属性设置为真,当用户选中了表中最后一条记录,并且按下设置为真,当用户选中了表中最后一条记录,并且按下“”键时,就向表中添加新记录。键时,就向表中添加新记录。表格的每个列中默认包含的控件是标头(表格的每个列中默认包含的控件是标头(Header)和文本框。标头的)和文本框。标头的Caption 属性决定列的标题。文本框能在属性决定列的标题。文本框能在运行表单时显示表格的运行表单时显示表格的RecordSource属性所指定的表中某个字段的数据。除在表格列中用文本框显示字段数属性所指定的表中某个字段的数据。除在表格列中用文本框显示字段数据外,还可以在列中嵌入别的控件。据外,还可以在列中
47、嵌入别的控件。返回第17页,本讲稿共18页7.4常用控件-表格控件(Grid)常用的表格列属性如下。常用的表格列属性如下。(1)ControlSource属性:指明在列中要显示的数据,一般是表中的一个字段。属性:指明在列中要显示的数据,一般是表中的一个字段。(2)Sparse属性:若将属性:若将Sparse属性设置为属性设置为.T.,则运行表单时,列中被选中的单元格的数据才显示为,则运行表单时,列中被选中的单元格的数据才显示为控件,列中的其他单元格的数据仍以文本形式显示。控件,列中的其他单元格的数据仍以文本形式显示。(3)CurrentControl属性:指定列中哪一个控件是活动的,默认值为属
48、性:指定列中哪一个控件是活动的,默认值为“Text1”。常用的列标头属性如下。常用的列标头属性如下。(1)Caption属性:指定标头的标题文本,显示在列顶部。属性:指定标头的标题文本,显示在列顶部。(2)Alignment属性:指定标题文本在对象中显示对齐方式。属性:指定标题文本在对象中显示对齐方式。表格设计也可以调用表格生成器来进行。通过表格生成器,能够交互式地快速设置表格的有关属性,创建所需要的表格。表格设计也可以调用表格生成器来进行。通过表格生成器,能够交互式地快速设置表格的有关属性,创建所需要的表格。使用表格生成器生成表格的步骤是;先通过使用表格生成器生成表格的步骤是;先通过“表单控
49、件表单控件”工具栏在表单上放置一个表格,接着右击表格,并在工具栏在表单上放置一个表格,接着右击表格,并在弹出的快捷菜单中选择弹出的快捷菜单中选择“生成器生成器”命令,打开命令,打开“表格生成器表格生成器”对话框,然后在对话框内设置有关选项参数,当设置对话框,然后在对话框内设置有关选项参数,当设置完后单击完后单击“确定确定”按钮,关闭对话框,系统就会根据指定的选项参数设置表格的属性。按钮,关闭对话框,系统就会根据指定的选项参数设置表格的属性。“表格生成器表格生成器”对话框包括对话框包括4个选项卡,其作用大致如下。个选项卡,其作用大致如下。(1)“表格项表格项”选项卡:指明要在表格内显示的字段。选项卡:指明要在表格内显示的字段。(2)“样式样式”选项卡:指定表格的样式,如标准型、专业型、账务型等。选项卡:指定表格的样式,如标准型、专业型、账务型等。(3)“布局布局”选项卡:指明各列的标题和控件类型,调整各列列宽。选项卡:指明各列的标题和控件类型,调整各列列宽。(4)“关系关系”选项卡:设置一个一对多关系,指明父表中的关键字段与子表中的相关索引。选项卡:设置一个一对多关系,指明父表中的关键字段与子表中的相关索引。返回第18页,本讲稿共18页