第1章VisualBasic概述.docx
《第1章VisualBasic概述.docx》由会员分享,可在线阅读,更多相关《第1章VisualBasic概述.docx(18页珍藏版)》请在冰豆网上搜索。
第1章VisualBasic概述
第一章VisualBasic
概述
§1.1>VisualBasic的发展简史
编写计算机程序需要使用计算机语言。
计算机语言包括:
机器语言
汇编语言
高级语言
VisualBasic是“高级语言”。
就像人类的语言一样,计算机“高级语言”也有很多种。
目前较为广泛使用的语言有“C++”、"Java"、"Pascal"等。
Basic语言是20世纪60年代美国Dartmouth学院的两位年轻教师(JohnGKemeny和ThomaEKurtz)开发的计算机设计语言,其含义是“初学者通用的符号扌旨令代码"(Beginner?
sAllpurposeSymbolicInstructionCode)。
它具有简单易学、界面友好、操作简便的特点,因此很快得到了广泛的应用。
20世纪80年代,随着结构化程序设计的需要,新版本的Basic语言增加了新的数据类型和程序控制结构,其中较有影响的有TrueBasic、QuickBasic和TurboBasic等。
20世纪90年代初,由于Windows操作平台的逐渐流行,PC机的操作方式开始由命令行方式向图形用户界面(GUI,GraphicalUserInterface)方式转变。
微软(Microsoft)公司凭借强大的技术优势,开始把Basic向可视化编程方向发展,于是就有了第一代的VisualBasic产品。
虽然第一代的VisualBasic
产品功能很少,但是它具有跨时代的意义。
随着Windows操作系统的不断成熟,VisualBasic产品由1・0版升级到6・0版,使VB得到了很大的扩充和增强。
1991年4月,VisualBasic1.0Windows版本发布
1992年11月,VB2.0发布。
它对于上一个版本的界面和速度都有所改善。
1993年夏天,VB3.0发布,分为标准版和专业版。
其中包含一个数据引擎,可以直接读取Access数据库。
1995年8月,VB4.0发布了32位版本和16位的版本。
其中包含了对类的支持。
1997年2月,VB5.0发布。
程序员可以用32位的版本导入由4.0版本创建的16位程序,并且能顺利编译。
同时还包含了对用户自建控件的支持。
1998年夏天,VB6.0发布。
2001年,VisualB和.NETFramework发布。
由于其使用了新的核心和特性,所以很多VB的程序员都要改写程序。
2003年,VisualB2003和.NETFramework1.1发布。
2004年,微软开放了VisualStudio2005的测试版本(代号Whidbey)。
包含了.NETFramework2.0的测试版本。
2005年,微软正式推出了VB的继任者VisualBasic.NET,同时也是.NET平台的一部分。
VB.net编程语言是一种真正的面向对象编程语言,和VB并不完全兼容
由VB派生的语言
微软开发了一系列有关VB的脚本语言:
VisualBasicforApplications,即VBA,包含在微软的应用程序中(比如MicrosoftOffice),以及类似WordPerfectOffice这样第三方的产品里面。
VBA这样嵌入在各种应用程序中看起来有些矛盾,但是它的功能和VB一样强大。
VBScript是默认的ASP语言,还可以用在Windows脚本编写和网页编码中。
尽管它的语法类似于VB,但是它却是一种完全不同的语言。
VBS不使用VB运行库运行,而是由Windows脚本主机解释执行。
这两种语言之中的不同点影响ASP网站的表现。
§1.2VisualBasic特点
VB是一种图形用户界面GUI)下的,面向对象的,事件驱动机制的可视化程序
(
设计语言。
1、GUI:
(GraphicalUserInterface)图形用户界面;
2、面向对象:
对象:
程序代码和数据相结合的综合体。
程序设计以对象为组成
单元。
通过设置对象的属性,使对象具有用户所要求的特征。
通过触发对象
的事件,执行相应的事件代码,使程序作出响应。
3、事件驱动的编程机制:
通过触发事件执行事件程序的操作。
传统的面向过程的应用程序是按照事先设计的流程运行的。
但在事件驱动的编程机制中,用户程序的运行流向取决于事件的触发。
4、可视化编程:
可视界面程序设计。
可视化环境下设计界面变得简单直观,给程序员设计良好的程序界面带来了很大方便,因此得到编程爱好者的青睐。
5、友好的集成开发环境
在VB集成开发环境中,用户可以设计界面、编写代码和调试程序,把应用程序编译成可执行文件,还可以生成最终的安装文件,这样在脱离开发环境的情况
下也可以运行。
而且VB开发环境提供了传统的Windows应用程序的操作菜单,易于掌握。
§1.3.VB集成开发环境
VB6.0的集成环境与Windows风格类似,主要由以下九部分组成:
主窗口、(控件)工具箱、窗体窗口(窗体设计器)、工程(资源)管理窗口、属性窗口、布局窗口、代码编辑窗口、对象浏览窗口、立即、本地和监视窗口。
1.3.1主窗口
由标题栏、菜单栏、(快捷)工具栏组成。
1.标题栏:
包含控制项、工作模式、最大化/还原、最小化和关闭按钮
2・菜单栏:
提供了VB操作的必要的功能。
包含13个下拉菜单
(1)文件:
用于创建、打开、保存、显示最近的工程以及生成可执行文件的命
(2)编辑:
用于程序源代码的编辑。
(4)工程:
用于控件、模块和窗体等对象的处理
(5)格式:
用于窗体控件的对齐等格式化命令。
(6)调试:
用于程序调试、差错等。
(7)运行:
用于程序启动、设置中断和停止等程序运行的命令。
(8)查询:
VB6.0新增命令,在设计数据库应用程序时编辑数据的命令。
(9)图表:
VB6.0新增命令,在设计数据库应用程序时编辑数据库的命令。
(10)工具:
用于集成开发环境中下工具的扩展。
(11)外接程序:
用于为工程增加或删除外接程序。
(12)窗口:
用于屏幕窗口的层叠、平铺等布局以及列出所有打开文档窗口。
(13)帮助:
帮助用户系统学习掌握VB的使用方法及程序设计方法。
3.工具栏:
常用菜单命令的快捷方式
1.3.2(控件)工具箱(ToolBox)
提供了应用程序的构件,亦称控件类。
用于设计时在窗体中放置控件。
通常工具箱中有20个标准控件。
还可添加扩充控件,方法为:
工程…部件
1.3.3窗体窗口(窗体设计器)
该窗口是应用程序界面的载体,该窗口可以显示、设计和编辑各种对象(图形、图像、空间、程序、数据等)。
一个VB的应用程序至少有一个窗体窗口。
通用…窗体网格来设置(缺省:
120^)o(1缓等于1/1440英寸或1/567厘米)1.3.4工程(资源)管理器窗口:
工程是指用于创建一个应用程序的文件的集合,*vbp,该窗口以树状列表形式显示当前工程的组成。
工程中包含三类文件:
窗体文件(.FRM):
该文件储存窗体上使用的所有控件对象、对象的属性、对象相应的事件过程及程序代码。
一个应用程序至少包含一个窗体文件。
标准模块文件CBAS):
所有模块级变量和用户自定义的通用过程都可产生这样的文件。
一个通用过程是指可以被应用程序各处调用的过程。
类模块文件CCLS):
可以用类模块来建立用户自己的对象。
类模块包含用户对象的属性及方法,但不包含事件代码。
窗体中有三个按钮:
“查看代码”按钮:
切换到“代码编辑窗口”
显示和编辑程序代码。
“查看对象”按钮:
切换到“窗体窗口”,查看当前窗体内容。
“切换文件夹”按钮:
切换工程中的文件是否按类型显示,若按类型显示,则以树形的结构、文件夹的方式显示。
1.3.5属性窗口:
设置对象的属性,以描述窗体或控件特征数据值
1.对象列表框:
显示和选择当前工程每个对象的名称和类型;
2.属性列表框:
显示和修改选定对象的属性名称及取值;
3.属性说明栏
1.3.6窗体布局窗口:
用于指定程序运行时的窗体初始位置
窗体布局
1.3.7.代码编辑窗口:
专门用来进行程序设计的窗口
1.对象列表框
2.事件列表框
3.代码框
1.3.8对象浏览器窗口
可查看在工程中定义的模块或过程,也可以查看对象库、类型库、类、方法、
书信、事件及可在过程中使用的常数。
图1-12对象浏览器窗口
1.3.9立即、本地和监视窗口:
为调试应用程序提供的窗口。
立即窗口还可以交互方式执行顺序语句。
§1.4实例与编程步骤
1.4.1实例
例1、1+4=?
步骤:
1、建立一个Forml的窗体;
2、增加两个命令按钮;
修改属性:
Forml.font=宋体4号Command1.Caption=计算Command2.Caption=退岀
4、切换到“代码窗口”
5>选择:
对象:
Commandl
事件:
Click
6、输入程序:
PrivateSubCommandl_Click()
DimaAsLong,bAsLong,mAsLongCis
a=InputBox(Ha=H)
b=InputBox(nb=n)
m=a+b
Forml.Printa;n+'!
;b;n=n;m
EndSub
7、选择:
对象:
Command2
事件:
Click
输入程序
PrivateSubCommand2_Click()
End
EndSub
8、保存程序:
(1)保存工程文件.VBP
(2)保存窗体文件・FRM
9、运行调试程序
1、新建一个窗体;
2、添加两个“按钮,‘Commandl和Comand2和一个“标签”Labell
3、设置属性:
Commandl:
Caption“欢迎(&H)
Command2:
Caption“时间(&T)
Labell:
Backcolor
1——Fixed
Borderstyle
Font宋体3号字
4、编写代码:
PrivateSubCommandl_Click()
Labell.Caption二”欢迎H&Chr(13)&Chr(10)&nvbH
EndSub
PrivateSubCommand2_Click()Labell.Caption=Time
EndSub
5、保存、运行程序
*时间变化,添加一个计时器控件
PrivateSubCommandl_Click()
Timerl.Enabled=False
Labell.Caption=”欢迎n&Chr(13)&Chr(10)&nvbKEndSub
PrivateSubCommand2_Click()
Timerl.Enabled=True
EndSub
PrivateSubTimerl_Timer()
Labell.Caption=Time
EndSub
1.4.2编程步骤:
V
.Vbp工程文件:
该工程全部文件和对象的清单及环境选项的信息。
.Frm窗体文件:
工程中每个窗体对应一个窗体文件,包括窗体及其控件信息描述。
・Exe可执行文件:
可直接在Windows环境下运行的工程文件。
1.4.3程序调试
调试程序的目的就是要找出程序中的错误并加以改正,使程序能迅速地投入运行。
VisualBasic中常见的错误通常可分为三类:
编译错误、运行错误、逻辑错误。
(1)编译错误:
编译错误(又称语法错误)包括语法错误或者结构错误,它是由于不正确构造代码而产生的。
例如敲错关键字、遗漏了某些必须的
标点符号或使用了全角的标点符号,或在设计时使用了IF语句而没有ENDIF语句与之对应等。
(2)运行错误:
应用程序在VisualBasic环境下运行时,当执行了不可实现的操作就会产生运行错误。
例如数据类型不匹配、除法运算中,分母为零、试图打开一个并不存在的文件或对象等都会产生运行错误。
(3)逻辑错误:
逻辑错误是由于程序的结构或者算法错误而引起的。
当应
用程序未按预期方式执行从而未得到预期结果时,就表示可能有一个或多个逻辑错误。
引起这种错误的应用程序并没有语法错误,在运行过程中也
没有发生错误,只是最后的结果并不是所希望的结果,即不是因为语法错误或者运行错误,而是编程过程算法等方面不正确引起的,这种错误需要改变算法或者程序结构。
这类错误产生的原因很多,也是最难纠正的,只有通过逐步测试应用程序和分析产生的结果才能检验出来。
(讲到Stop语句再讲)
§1.5、认识对象三要素:
属性、事件与方法
“对象”是面向VB程序设计的基础,VisualBasic中的对象由三大要素组成,分别是属性,事件和方法。
对象(Object)
日常生活中,对象的概念就是“东西”、“物品”等代名词。
如果把程序设计看成是盖房子的话,那么程序中的对象就相当盖房子的房基地、砖头、水泥等。
在VB中,常用对象有窗体、控件、菜单、应用程序和数据库等。
一般分为3类:
1、界面对象:
主要用来设计应用程序的用户界面。
主要有窗体(Form)-房基地和控件(Control)…砖头、水泥等。
2、系统全局对象:
画面中看不见的对象,如剪贴板等;
3、数据存取对象:
作为数据库管理用,如:
DataBase等。
1.5.1属性(Property)
VB中,很多对象都具有自己的属性表。
这些属性表是预先定义的,例如,Caption,Backcolor,Width等。
每一个属性都具有名称和属性值。
名称不能改变,是系统设定的;而属性值用户可以改变。
改变的方法有两种:
(1)设计阶段:
通过属性窗口设定;
(2)执行阶段:
在程序执行过程中设定或改变。
语法格式:
[v对象名>・]v属性名>=v属性值>
日常对象的属性及属性值
对象
属性
名称
属性值
桌子1
分类
书桌1
材料
木头
色彩
白色
VB对象的属性及属性值
对象
属性
名称
属性值
Commandl
Caption
退出(&C)
Font
宋体
foreColor
&H8000000F&
所以,了解VisualBasic的对象都具有哪些属性,这些属性各代表什么意义及如何设定这些属性的值,是学习VB程序设计另一重要组成部分。
1.5.2事件(Event)
事件就是一个动作或状态。
例如「踢一下”CHck
事件通常会发生或作用在某个对象上,
例如:
“踢一下小狗”Command_Click
VB的事件大体可分为两种
1、用户事件:
由用户引起的事件。
例如:
鼠标事件:
Click/Drag……
键盘事件:
Key_Press/Key_up,,
2、系统事件:
由系统内部所引起的事件。
例如:
窗体(Load/Activate
定时器(Timer),,
1.5.3方法(Method)
“方法”指的是作用在对象上的内部指令或函数。
其目的是为了使对象执行特殊操作。
注意:
“方法”是某些内部指令或函数的统称,这些内部的指令或函数因其作用与“对象所以就给予一个特殊名称叫“方法”;而那些不是作用在对象上的内部指令或函数则不称之为方法。
例如,Print在传统的BASIC语言中是一个指令,其目的是把数据输出到屏幕。
但在VB中,最基本的输出对象是窗体等对象。
当一个方法作用于一个对象时,实际是执行了面向该对象的某个程序段。
由于对象不同,方法的语法格式为:
[<对象名>・]v方法名〉[参数]
1.5.4了解事件驱动与程序驱动的差异
传统的程序设计观念是属于程序驱动的,而VisualBasic的程序设计观念则是事件驱动式的。
因此,事件驱动是VisualBasic程序设计的中心思想。
1>事件程序(EVentProcedure)
事件程序:
对象发生事件所执行的程序。
可视为对象对事件的“反应”或“结果”O不同的事件作用在不同的对象上会造成不同的结果;即使是同一个事件、也会因对象不同而有不同的反应。
例如:
踢一下小狗-…小狗汪汪叫
踢一下桌子…-你惨叫
同样是“踢一“下”这个动作(事件)、发生在“小狗和“桌子”这两种不同的对象上,却有不同的结果。
以专业术语来说,就是该事件引发不同的对象所对应的“事件程序”(反应)不一样。
同样的,不同的事件作用在同一个对象上,也会引发不同的事件程序。
我们学习VB的重点之一就是要编写事件程序码,即编程序,以”告诉”对象对不同的事件该做什么适当的反应。
事件程序表现为过程形式。
通常以保留字PrivateSub为开头、EndSub为结束,其命名规则是对象名称在前,事件名称在后,中间加下划线符号,一般格式为:
PrivateSub<对象名_事件名>(自变量序列)
<用户程序代码〉
EndSub2、通用程序(GeneralProcedure)
不是由事件来驱动而是由别的程序来调用的程序即称为“通用程序”,也就是所谓的传统“子程序”O此种由其他程序来驱动的方式称之为“程序驱动”(ProcedureDriven)
要在窗体中设计一个通用程序,可以在程序代码窗口的对象栏选择“通用”:
然后直接输入程序名称和程序代码即可,
通用程序以保留字PrivateSub为开头(Private可省略),其后跟着程序名称及白变量列,然后为程序代码,最后以EndSub为结束,即:
[PublicIPrivate][Static]Sub<程序名称>(v自变量序列>)
<用户程序代码>
EndSub