用VB进行应用程序设计,实际上是与一组标准对象进行交互的过程。因此,准确地理解对象的概念,是设计VB的重要环节。
1.对象的一般概念 .
前面我们介绍了窗体窗口和工具箱窗口,用工具箱中的控件图标可以在窗体上设计界面。窗体和控件就是Visual Basic中的对象,这些对象是由系统设计好提供给用户使用的,其移动、缩放等操作也是由系统预先规定好的,这比一般的面向对象程序设计中的操作要简单得多。工具箱中的控件实际上是“空对象”。以后我们会看到,用这些空对象可以在窗体上建立真正的对象,然后就可以用鼠标调整这些对象的位置和大小。对象是具有特殊属性和行为方式的实体。建立一个对象后,其操作通过与该对象有关的属性、事件和方法来描述。
2.对象的属性
属性是一个对象的特性,不同的对象有不同的属性。对象常见的属性有标题(Caption)、名称(Name)、颜色(Color)、字体大小(Fontsize)、是否可见(Visible)等。前面介绍的属性窗口中含有各种属性,可以在属性列表中为具体的对象选择所需要的属性(方法见后)。除了用属性窗口设置对象属性外,也可以在程序中用程序语句设置,一般格式如下:
对象名.属性名称=新设置属性值
例如,假定窗体上有一个文本框控件,其名字为Display(对象名称),它的属性之一是Text,即在文本框中显示指定的内容。如果执行:
Display.Text="Good morning!"
则把字符串"Good morning!"赋给Display文本框控件的Text属性。在这里,Display是对象名,Text是属性名,而字符串"Good Morning!"是所设置的属性值。
3. 对象的事件
Visual Basic是采用事件驱动编程机制的语言。传统编程使用的是面向过程、按顺序进行的机制,这种编程方式的缺点是写程序的人总是要关心什么时候发生什么事情。而在事件驱动编程中,程序员只要编写响应用户动作的程序,如选择命令、移动鼠标等,而不必考虑按精确次序执行的每个步骤。在这种机制下,不必编写一个大型程序,而是建立一个由若干个微小程序组成的应用程序,这些微小程序都可以由用户启动的事件来激发。利用Visual Basic,可以方便地编写此类应用程序。
所谓事件,是由Visual Basic预先设置好的、能够被对象识别的动作,例如Click(单击),DblClick(双击),Load(装入),MouseMove(移动鼠标),Change(改变)等。不同的对象能够识别的事件也不一样。当事件由用户触发(如Click)或由系统触发(如Load)时,对象就会对该事件做出响应(Respond)。例如,我们可以编写一个程序,该程序响应用户的Click事件,只要单击鼠标左键即可在屏幕上显示指定的信息。
响应某个事件后所执行的操作通过一段程序代码来实现,这样的一段程序代码叫做事件过程(Event Procudure)。一个对象可以识别一个或多个事件,因此可以使用一个或多个事件过程用户或系统的事件作出响应。虽然一个对象可以拥有许多事件过程,但在程序中能使用多少事件过程,则要由设计者根据程序的具体要求来确定。事件过程的一般格式如下:
Private Sub对象名称~事件名称()
事件响应程序代码
End sub
“对象名称”指的是该对象的Name属性,“事件名称”是由Visual Basic预先定义好的赋予该对象的事件,而这个事件必须是对象所能识别的。至于一个对象可以识别哪些事件,则无需用户操心。因为在建立了一个对象(窗体或控件)后,Visual Basic能自动确定与该对象相配的事件,并可显示出来供用户选择。具体用法将在后面介绍。
4.对象的方法
在传统的程序设计中,过程和函数是编程语言的主要部件。而在面向对象程序设计(OOP)中,引入了称为方法(Method)的特殊过程和函数。方法的操作与过程、函数的操作相同,但方法是特定对象的一部分,正如属性和事件是对象的一部分一样。其调用格式为:
对象名称.方法名称
看起来,方法的调用似乎没有过程调用方便,但它有一个优点,就是允许多个方法重名,即多个对象使用同一个方法。例如,在BASIC的早期版本中,用PRINT语句(过程)可以在显示器上显示一个文本字符串。为了在打印机上打印同一个字符串,必须执行(调用)另一个语句(LPRINT)两 个语句(过程)的操作类似,但不能用同一个语句来实现。在Visual Basic中,提供了一个名为 Print的方法,当把它用于不同的对象时,可以在不同的设备上输出信息。例如:
Myform.Print“Good Morning!”
可以在名为"Myform"的窗体上显示字符串"Good Morning!”。在Visual Basic中,打印机的对 象名为Printer,如果执行:
Printer.Print"Good Morning!”
则在打印机上打印出字符串"Good morning!”。
上面两条指令使用的是同一个方法,但由于对象不同,执行操作的设备也不一样。在调用方法时 ,可以省略对象名。在这种情况下,Visual Basic所调用的方法作为当前对象的方法,一般把 当前窗体作为当前对象。前面的例子如果改为:
Print"Good morning!"
则运行时将在当前窗体上显示字符串“Good morning!”。为了避免不确定性,最好使用“对象.方法”的形式。
在中间,先打两次空格键,然后输入英文print,然后再输入英文格式的双引号"",然后在双引号里面打字就可以了
这么白痴的问题