第1章 VB.NET入门
VB.NET是Visual Basic.NET的简称,是一种面向对象的高级语言程序设计语言及编程环境。本章主要介绍面向对象程序设计的基本概念和VB.NET常用控件。通过本章的学习,可以了解对象与类的基本概念,了解VB.NET的事件驱动编程机制,了解VB.NET常用控件的属性、事件和方法等,并能使用这些控件快速建立简单的Windows应用程序。
1.1 引例:第一个VB.NET应用程序
VB.NET集成在Visual Studio.NET中,使用VB.NET可以快速建立各种类型的项目。本节通过创建一个简单的应用程序说明VB.NET应用程序的创建过程。
【例1-1】创建“第一个VB.NET应用程序”项目,如图1-1所示。窗体的标题为“滚动广告”,窗体中第一行是文本框(图中显示白底的“欢迎光临”),第二行是一个“显示”按钮,最后一行显示的“欢迎光临”是一个标签。实现功能:在文本框中输入你需要滚动的文字(如“欢迎光临”),单击显示按钮后,标签的标题会变成文本框输入的文字,同时自左向右滚动;当标签超出窗体边界后,标签从窗体最左边再进入继续滚动。
图 1-1 第一个VB.NET应用程序
1. 创建项目
1) 首先打开Visual Studio 2005集成开发环境:单击选择菜单“开始”→“程序”→
“Microsoft Visual Studio 2005”→“Microsoft Visual Studio 2005”,启动VB.NET集成开发环境。
2) 单击菜单“文件”→ “新建项目”命令,弹出“新建项目”对话框,如图1-2所示。
在该对话框中,在“项目类型”列表框中选择“Visual Basic”下 的“Windows”,在“模板”列表框中选择相应的程序类型“Windows应用程序”,在“名称”文本框中输入名称“第一个VB.NET应用程序”,单击“确定”按钮。
图 1-2 “新建项目”对话框
3) 这时创建了一个名为“第一个VB.NET应用程序”的新项目,在vb.net2005集成开
发环境中将显示一个新的窗体,并且项目所有的文件也将添加到“解决方案资源管理器”窗口中。将鼠标指向窗口左边的刚开始隐藏显示的工具箱,在弹出的窗口单
击“自动隐藏”按钮,使工具箱窗口显示在窗体上,如图1-3所示。此时“自动隐藏”按钮已变成,单击它,可以再次隐藏工具箱窗口。
图 1-3 VB.NET集成开发环境
2. 添加控件
1) 在工具箱中找到Textbox控件并单击它,随后在Form1窗体上单击一下,
在Form1窗体上就会自动生成一个文本框对象Textbox1。或者直接双击工具箱中的
Textbox控件,也可以用鼠标拖动它到窗体上的适当位置均可实现此操作。 2) 采用同样的方法在窗体上放置一个按钮Button1和一个标签
Label1。单击工具箱的“所有Windows窗体”选项卡,再选择Timer控件,将其拖放到窗体上。拖动各个对象可以移动到适当的位置。这样窗体设计的初始界面如图1-4所示。
图 1-4 窗体设计界面1
3. 设置属性
1) 在Form1窗体的空白处右击鼠标,在出现的快捷菜单中选择“属性”,此时出现窗
体的属性窗口,找到“Text”行,将“Form1”改为“滚动广告”,回车确认。这时Form1窗体的标题就设置完毕。
2) 同样地,设置按钮Button1的Text属性为“显示”,修改控件属性后的窗体如图1-5
所示。到目前为止,已经完成界面设计。
图 1-5 窗体设计界面2
4. 编写程序代码
1) 在窗体设计窗口中,双击窗体中的“显示”按钮,进入代码编辑窗口。在出现的代
码窗口中,默认的事件过程是Click事件(鼠标单击时发生的事件),此例中无需改动。在系统自动生成的代码sub和End Sub之间输入如下语句(不包括'后面的解释文字):
Timer1.Enabled = True '开启计时器
Label1.Text = TextBox1.Text '文本框内容赋给标签 2) 选择工作区上方的“Form1.vb[设计]”选项卡,重新进入设计窗口。双击窗体下的
Timer1定时器控件,在出现的代码窗口中,默认的事件过程是Tick事件(当定时器
开启时,系统以一定的时间间隔产生Tick事件),此例中无需改动。在Sub和End Sub之间输入如下语句(不包括'后面的解释文字): Label1.Left = Label1.Left + 10 '标签从左到右移动 If Label1.Left > Me.Width Then Label1.Left = -Label1.Width '超过边界处理 5. 运行和保存程序
1) 单击工具栏上的运行按钮或按F5键运行该程序。刚开始运行时,窗口中的文本框
的值为空,按钮的标题为“显示”。如果在文本框中输入“欢迎光临”,再单击“显示”按钮后,会触发按钮的click事件,调用其事件过程代码,将标签的标题(text值)改为“欢迎光临”,并启动定时器,则标签“欢迎光临”从左向右自动移动,一直到右边消失不见,又从左边出现,这样周而复始。 2) 执行菜单文件I全部保存命令,或者单击“全部保存”按钮,在出现的图1-6所
示的“保存项目”对话框中,单击“浏览”按钮,通过“项目位置”对话框选择项目保存的位置,如“D:\\vbnet”,单击“保存”按钮,保存项目的全部文件。
图 1-6 “保存项目”对话框
1.2 VB.NET特点及集成开发环境
Visual Basic.NET是基于微软的.NET技术框架(.NET Framework)之上的面向对象的中间
解释性语言,可以看作是Visual Basic在.Net Framework平台上的升级版本,增强了对面向对象的支持。但由于改动太大,导致VB.net对VB的向后兼容性不好。
VB.net的运行是建立在公共语言运行时(CLR,Common Language Runtime)和微软中间语言(MSIL,Microsoft Intermediate Language)虚拟器上的。
1.2.1 VB.NET的特点
1. 完全支持面向对象编程
虽然在VB 4.0中就引入了面向对象的编程方式,但在VB.NET之前,它们均不是真正的面向对象的程序设计语言。VB.NET利用.NET框架提供的功能,引入了更严格的面向对象特性,如封装、继承、可重载性、多态性等,从而真正实现了面向对象的编程,是一门真正的面向对象的程序设计语言。 2. 事件驱动
VB.NET采用了事件驱动方式,即程序是由对象构成,每个对象都可响应若干特定的事件,每个事件都能驱动一段特定的代码,这段代码称为事件过程代码。事件过程代码决定了对象功能,通常称这种机制为事件驱动。
在VB.NET中,事件可由用户操作触发,也可以由系统或应用触发。例如,单击某个命令按钮就触发了该命令按钮的“单击事件”,该事件对应的事件过程代码就会被执行。
3. 使用ADO.NET进行数据访问
在这里,只讨论狭义的数据访问,即访问数据库的技术和手段。在VB 6.0中,使用的数据访问技术是ADO,而在VB.NET中,使用的数据访问技术为ADO.NET,这也是VB.NET的重大改进之一。ADO.NET是在ADO基础上发展起来的,是对ADO的重新设计和扩展,是一种全新的数据访问对象模型。ADO具有的功能,ADO.NET基本上都具有,同时ADO.NET更适用于分布式及Internet等应用程序运行环境。 4. 方便地进行Web应用程序开发
Microsoft公司将.NET框架主要定位在开发企业规模的Web应用程序以及高性能的桌面应用程序上。.NET平台所强调的是网络编程和网络服务的概念,因此,基于.NET框架的VB.NET,在网络应用程序开发方面有了显著的改进。VB.NET提供了更直观、方便的Web应用程序开发环境,它可以用直接编辑ASP.NET的方式来开发Web应用程序。VB.NET还提供了开发Web服务的功能,Web服务可以看作是网上的API函数库,可以被Internet站点调用,调用Web服务的程序称Web客户。Web服务是一种构造新的Web应用程序的通用模型。
1.2.2 VB.NET集成开发环境
Visual Studio .NET可视化应用程序开发工具组是.NET技术的开发平台,Visual Basic .NET是该工具组中的一个重要成员,其中还包括Visual C++ .NET(简称VC++ .NET)、Visual C# .NET(简称VC# .NET)等开发工具。Visual Studio .NET通过公共语言运行环境(CLR),将VB.NET、VC++.NET、VC# .NET等应用程序开发工具紧密地集成在一起,使它们共同使用同一个集成开发环境(IDE——Intergrated Development Environment),并使用同一个基础类库,从而大大简化了应用程序的开发过程,为快速创建Windows应用程序提供了强有力的支持。
IDE由各种工具组成,包括允许可视化创建窗体的窗体设计器;用于输入和修改程序代码的代码编辑器;将VB语句翻译成机器代码的编译器;帮助定位和修改程序错误的调试器;查看可用的类、对象、属性、方法和事件的对象浏览器以及帮助系统。VB.NET是以项目为单位开发的,一般一个项目对应一个应用程序。要新建一个VB.NET的Windows应用程序,首先要进入VB.NET集成开发环境。
图 1-7 IDE集成开发环境介绍
图1-7中显示了Visual Studio环境的主窗口及其一系列的子窗口。每一个窗口都可以移动、调整大小、打开、关闭和定制。一些窗口还有允许显示不同内容的选项卡。IDE中的窗