Visual Basic.NET
程序设计与应用徐振明 主 编中国水利水电出版社
1.1,NET Framework简介
1.2 Visual Studio.NET的安装
1.3 Visual Studio集成开发环境
1.4 创建一个简单的 Windows应用程序项目
1.5 面向对象程序设计的基本概念窗体及常用控件
1.6 窗体及常用控件
1.7 应用程序开发步骤第 1章,NET Framework概述第 1章,NET Framework概述知识点:
Visual Studio.NET安装
Visual Studio.NET集成开发环境面向对象程序设计的基本概念一个简单的 Windows 应用程序的创建步骤
Visual Studio.NET可构建复杂的企业级应用程序,并在最小的设备上部署应用程序。 VisualStudio.NET和 Microsoft
Windows.NET Framework提供了一个强大、完善的端到端工具,用以设计、开发、调试和部署。
1.1,NET Framework简介
NET Framework是一种用于构建、部署和运行 XML Web
Services 及应用程序的平台。,NET Framework 的 2.0版随
Visual Studio 2005一起提供,它通过公共语言规范,提供效率极高的、基于标准的多语言环境。作为整个开发框架的基础,.NET Framework 具有两个主要组件:公共语言运行
(环境)库和,NET Framework 类库集。公共语言运行库是
NET Framework 的基础,它管理内存、线程执行、代码执行、
代码安全验证、编译以及其他系统服务。这些功能是在公共语言运行库上运行的托管代码所固有的。可以将运行库看作一个在执行时管理代码的代理,而且还强制实施严格的类型安全以及可确保安全性和可靠性的其他形式的代码准则。以运行库为目标的代码称为托管代码,而不以运行库为目标的代码称为非托管代码。,NET Framework 的另一个主要组件是类库集,它是一个综合性的面向对象的可重用类型集合,
该类库是面向对象的,并提供从托管代码中导出功能的类型,
可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面( GUI)应用程序,也包括基于
ASP.NET所提供的最新的应用程序。
.NET Framework 可由非托管组件承载,这些组件将公共语言运行库加载到它们自己的进程中并启动托管代码的执行,从而创建一个可以同时利用托管和非托管功能的软件环境。
在开发技术方面,.NET提供了基于 Web的应用开发技术 ASP.NET和 Windows编程技术,他们都可以通过全新的 ADO.NET技术实现数据库的访问。在开发语言方面,.NET提供了 Visual Basic,Visual C++,Visual C# 和 Visual J# 等多种语言支持,
这些语言都严格遵守公共语言规范( Common Language Specification)。而
VisualStudio.NET则是全面支持,NET的开发工具,如图 1-1所示。
在 NET Framework 环境中,不同的开发人员可以在使用自己选择的语言进行开发的同时实现无缝的合作。
Windows窗体类是一组综合性的可重用的类型,它们大大简化了 Windows Forms
应用程序的开发。如果要编写 ASP.NET Web窗体应用程序,可使用 Web窗体类。
.NET Framework 架构公共语言运行环境 (CLR)
基类库( Base Class Library)
数据访问对象技术 ADO.NET and XML
ASP.NET Web窗体应用程序 Windows编程技术公共语言规范 ( Common Language Specification)
VB C++ C# J# … V
isu
al
St
ud
io.
NE
T
图 1-1,NET开发框架图
1.2 Visual Studio.NET的安装
1.2.1 系统要求
Visual Studio.NET 2005的不同安装选项如表 1-1所示。
表 1-1 安装 Visual Studio,NET 2005时的系统要求 (略 ) 。
1.2.2 Visual Studio安装安装 Visual Studio2005的发布版本时可以参考位于安装光盘( CD 或 DVD)
根目录下的自述文件。该文件包含有关 Visual Studio,NET中所有产品的安装问题的详细信息。
1,本地安装
( 1)关闭所有打开的应用程序,以免安装过程中系统重启时丢失数据。
( 2)插入标有,Visual Studio 2005 CD1”的光盘。自动运行功能将启动 Setup.exe。
( 3)单击安装界面中的“安装 Visual Studio 2005”,此时,安装程序将扫描磁盘,查找已安装的组件。如果扫描过程确定系统需要系统必备组件,“安装程序”对话框将会提供必备的组件清单
( 4)更新系统组件后,系统已有必备组件,可单击
“安装程序”按钮提示安装。
( 5) Visual Studio 2005安装完成后,单击图 1-2 中的“安装产品文档”,开始安装 MSDN Library。 MSDN
Library 2005可以单独使用,也可与 Visual Studio
2005 一起使用,它为 Visual Studio 2005和其他
Microsoft 技术提供了大量的示例及帮助文档,为学习
Visual Studio 2005提供了极大的方便。
Visual Studio 2005 的本地安装除了可以从 CD或
DVD中运行外,还可以将 Visual Studio 2005的 CD或
DVD的内容全部复制到一个新文件夹中(例如 VS2005),
然后再运行该文件夹中的 Setup.exe,如上述步骤完成
Visual Studio 2005的本地安装。
2,通过网络进行安装
Visual Studio 2005 安装程序除了可以本地安装外,还可以从网络共享中安装。以下过程说明如何准备从网络共享安装 Visual Studio 2005。虽然该过程提到的是 Visual Studio
2005 CD,但其步骤与 DVD相同。
( 1)在服务器上创建一个文件夹(例如 VS2005)。
( 2)该文件夹中创建两个子文件夹,分别叫做 VS 和
MSDN。例如:
VS2005\VS
VS2005\MSDN。
( 3)将 Visual Studio 2005 CD的内容复制到 VS2005\VS文件夹中。如果系统提示您是否改写任何现有文件,请选择
“是”。
( 4)将标记为,MSDN Library for Visual Studio 2005”的所有 CD的内容复制到 MSDN子文件夹。如果系统提示您是否改写任何现有文件,请选择
“是”。
( 5)使用文本编辑器(如“记事本”)打开 VS子文件夹中的 Setup.ini。
( 6)在 [Documentation]节中,对以,DIR=”开头的行进行以下更改:
[Documentation]
DIR=..\MSDN
( 7)保存所做的更改,然后关闭该文件。
( 8)在 VS子文件夹中,打开 Setup文件夹。
( 9)在文本编辑器(如“记事本”)中打开 setup.sdb,然后在文件的末尾添加下面几行:
[Product Key]
XXXXX XXXXX XXXXX XXXXX XXXXX
保存所做的更改,然后关闭该文件。
完成此步骤可以为要从网络共享安装的用户预先填写产品密钥。
( 10)在网络上共享 VS2005文件夹并进行相应的安全设置。
1.3 Visual Studio集成开发环境
Microsoft Visual Studio(简称 VS.NET)是一套完整的开发工具,是一个集成开发环境( Integrated Development
Environment,简称 IDE),用于生成 Windows应用程序、
ASP.NET Web应用程序,XML Web Services和移动应用程序。
其中包含的 Visual Basic.NET(简称 VB.NET),Visual C++.NET、
Visual C#.NET等,全都使用相同的集成开发环境,该环境允许它们共享工具并有助于创建混合语言解决方案。
Visual Basic.NET是 NET Framework的支柱,同时更是语言演变过程中的又一个里程碑式的进步。对 NET Framework而言,
它是一种高级的编程语言,并为,NET提供了最方便的入口点。
.NET Framework统一了微软各种不同的框架。其体系内的各种语言,如 Visual Basic.NET,C++,C#等,除了语法上的差异外,其调用的类库都是相同的。
作为公共语言运行环境的强制标准,所有的语言必须支持相同的数据类型。这就结束了不同编程语言中数据类型互不兼容的状况。
1.3.1 新建、打开一个 VB.NET项目在启动 VB.NET之前要启动整个 Visual Studio 2005集成开发环境( IDE)。执行 Windows【 开始 】 |【 所有程序 】 |
【 Microsoft Visual Studio.NET 2005】 |【 Microsoft Visual
Studio.NET2005】 命令后,进入 Visual Studio.NET的起始页,
如图 1-4所示。
在“起始页”中单击左下部的“新建项目”按钮,将弹出如图 1-5所示的“新建项目”对话框。
图 1-4 Microsoft Visual Studio.NET起始页图 1-5,新建项目,对话框在“新建项目”对话框的“项目类型”选择栏中,选择
Visual Basic下的 Windows项目,在“模板”选择栏中选择
Windows应用程序模板,用默认项目名称(或改名)后,单击“确定”按钮,将出现基于 VB.NET的 Windows应用程序集成开发环境,如图 1-6所示的是 Form1窗体设计页面。
图 1-6 基于 VB.NET的 Windows应用程序集成开发环境在该集成开发环境中,可通过“起始页”选项卡方便地转到其他项目中,如图 1-7所示。
图 1-7 基于 VB.NET的 Windows应用程序集成开发环境在 VB.NET中,“打开”项目意味着打开一个已经存在的项目,Visual Studio 2005中有 3种打开方式:
单击“最近的项目”子页中选已列出的项目名,这种方式最快速、方便。
单击“最近的项目”子页中下部的“打开”命令按钮,将弹出“打开项目”对话框,选择需要打开的项目。
在 IDE中选择执行 【 文件 】 |【 打开 】 |【 项目 】 命令,将弹出“打开项目”对话框,选择需要打开的项目。
1.3.2 Visual Basic.NET IDE简介
IDE是在一个公共环境中,集成了编辑、设计和调试等多种功能,从而为开发人员快速、方便地开发应用程序提供了强有力的支持。主要包括菜单、工具栏和一些窗口。
菜单和工具栏菜单和工具栏位于 IDE的上部。通过选择菜单选项或单击工具栏的图标按钮来执行相关的命令。通常,工具栏的图标按钮的功能,在菜单中都可以找到,之所以采用工具栏是为了方便操作。
工具箱窗口当设计和修改解决方案的用户界面时,可通过工具箱窗口向窗体添加控件,在默认情况下,工具箱窗口是处于折叠状态,当光标扫过其图标时,
会自动展开。工具箱窗口根据控件的不同用途分为 10个选项卡,如图 1-8所示,可根据用途单击相应的选项卡,选择需要的控件。
开发环境的主窗口在 IDE的中部是开发环境的主窗口,用来显示指定的窗口,如创建 GUI的窗体窗口、代码设计器窗口及帮助信息显示窗口等。可通过主窗口上部的选项卡(如图 1-9的上部)指定要显示的窗口。窗体是一小块屏幕区域,通常为矩形,可用来向用户显示信息并接受用户的输入。定义窗体的用户界面的最简单方法是将控件放在其表面上,如图 1-10所示。
在应用程序窗体上双击即可打开如图 1-9所示的代码窗口,
可以通过代码设计器窗口编写窗体中对象的事件代码。
图 1-8 工具箱窗口 图 1-9 代码设计器窗口 图 1-10 窗体窗口属性窗口及解决方案资源管理器窗口属性窗口列出了窗体或控件的属性,可以通过属性窗口对控件的属性值进行修改,如图 1-11所示。解决方案资源管理器窗口显示项目中的所有文件,如图 1-12所示。
图 1-11 属性窗口 图 1-12 解决方案资源管理器窗口
任务、错误列表窗口任务列表窗口能帮助开发人员对创建应用程序的工作进行组织和管理。如 IDE能对代码设计器窗口中所编代码的语法进行实时侦测,并将发现的错误通过错误列表窗口告之:代码文件名、
在文件中的位置(行号)及错误说明 。
命令窗口与即时窗口
“命令”窗口用于直接在 Visual Studio集成开发环境( IDE)
中执行命令或别名。可以执行菜单命令和不在任何菜单上显示的命令。若要显示“命令”窗口,请从“视图”菜单中选择
“其他窗口”,再选择“命令窗口”。
别名可缩短执行命令所需的文本,提供一种将命令输入到
“命令”窗口中的方法。如在“命令”窗口中键入 >alias 可显示当前别名及其定义的列表。键入 >cls 可清除“命令”窗口中的内容。
即时窗口可以在中断模式下用于调试用途、计算表达式、
执行语句、输出变量值等。在进行调试应用程序、执行函数和语句等操作时,可使用即时模式查看并更改变量的值。
在即时窗口中,没有“?”时,语句 childCount =2 作为赋值语句执行,而有“?”时,语句 childCount =2是作为比较运算执行。
此外,还有显示开发环境中运行信息和调试信息的输出窗口等,在此不一一列出,需要时可参考 Microsoft MSDN。同时需要说明的是,根据创建程序的类型和窗口设置的不同,
集成开发环境中的窗口也会有一些不同,但操作方法基本一致。
1.4 创建一个简单的 Windows应用程序项目涉及 Windows窗体的大多数解决方案的基础是 Windows应用程序项目。在
IDE中,创建一个简单的 Windows应用程序项目是件很轻松的事情。
1.4.1 创建 Windows应用程序界面创建 Windows应用程序界面的步骤如下:
( 1)启动 Visual Studio.NET集成开发环境。
( 2)创建名为,HelloWorld”的 Windows 应用程序。
( 3)在 【 文件 】 菜单上执行 【 新建 】,然后选择“项目”(或按 1.3.1节介绍的方法建项目)。
( 4)在 【 项目类型 】 窗格中,选择 【 Visual Basic】 下的,Windows”项。
( 5)在 【 模板 】 窗格中,选择,Windows 应用程序”模板。
( 6)将一个 Button 控件和一个 Label控件从 【 工具箱 】 的 【 公共控件 】 选项卡中拖动到窗体上。
( 7)单击设计窗体上的 Button按钮将其选定。在 【 属性 】 窗口中,将 Text
属性设置为“欢迎”。
1.4.2 编写应用程序的代码下面就开始编写应用程序代码,步骤如下:
( 1)双击“欢迎”按钮,为 Button1的 Click事件添加事件处理程序。此时将打开代码编辑器,插入点已位于事件处理程序中。
( 2)插入下列代码。
Label1.Text = "Hello,World!“
1.4.3 测试应用程序接下来就到了测试应用程序,步骤如下:
( 1)按快捷键 【 F5】 运行该应用程序。
( 2)单击该按钮并验证已显示,Hello,World!”,如图 1-8所示。
( 3)关闭此 Windows窗体并返回 Visual Studio.NET集成开发环境。
( 4)测试成功后,通过 【 文件 】 菜单将项目保存到指定的文件夹中。
1.5 面向对象程序设计的基本概念
1.5.1 对象与类的概念
“类”和“对象”在面向对象的编程中使用得非常多,很容易将它们混淆。几乎在 Visual Basic中执行的所有操作都与对象关联。
对象( Object)是 Visual Basic程序设计中最基本、最重要的概念。在 Visual Basic,NET中所进行的任何操作几乎都涉及对象。对象可以是一段应用程序,可以是一个命令按钮,也可以是一个窗体。那么,究竟什么是对象呢?
对象是既包含数据又包含处理该数据的代码的逻辑实体,是实体化的类( Class)。现实生活中的一个实体就是一个对象,
如一辆特定的汽车、一台特定的电脑都是 —个对象。一台特定的电脑又可以拆分为特定的主板、特定的 CPU、特定的显卡等部件,这些部件又都分别是一个对象,因此电脑对象可以说是由多个“子”对象组成的,它可以称为是一个对象容器
( Container)。
从另一角度来说,Visual Basic中的每个对象都由一个类来定义。类描述对象的字段、属性、方法和事件。对象是类的实例,创建了一个类后,可以创建所需的任何数量的对象。
Visual Basic采用面向对象的编程方法,使得编程人员围绕对象来编写程序。对象是代码和数据的集合,可以作为一个整体来处理。
在客观世界中存在大量的对象。为了便于理解和管理,人们习惯通过对象的共同特征给对象分类。
类是对所有具有共同特征事物的抽象描述,是一个抽象的概念。类可以视为是一个具有类似特征与共同行为的对象的
“模板”。这个模板通过定义属性来存储数据,通过定义操作来使用这些数据,类同时也定义了一套规则来允许或禁止访问它的属性和操作。
1.5.2 对象的属性、事件和方法
Visual Basic中的对象都支持字段、属性、方法和事件。字段和属性表示对象包含的信息。字段类似于变量,因为可以直接读取或设置它们。
每个对象都包含一组数据,用来描述对象的特征,这组描述对象特征的数据称为对象的属性。对象所有属性值的集合称为对象的状态。 Visual
Basic中的每个对象都具有自己的属性。
事件是预先定义好的能够被对象所识别的动作,是对象从其他对象或应用程序接收的通知,或者是对象传输到其他对象或应用程序的通知。对每个对象来说,事件的类型是固定的,用户一般不能改变。但对事件响应后的具体工作任务是可以自行设计的,用户可以通过编写程序代码来响应事件,这段代码称为事件代码。
方法是类定义的过程。方法的使用类似于子例程或函数。对象的方法是指对象要完成的某个动作或功能。如窗体关闭功能。对象的方法和事件有相似之处,它们都执行相应的功能。但方法是系统预先定义好的,用户不能更改。而事件的类型是固定的,但事件代码可由用户自行编写。方法又称为操作或服务,也称为行为,对象的方法集合体现了对象的行为能力。
1.5.3 对象的封装、继承及多态性字段、属性、方法和事件只是面向对象编程的基本特征,
真正的面向对象的编程需要对象支持三种特性:封装、继承和多态性。
“封装”是指将不同功能和属性包装、捆绑在一个抽象的实体中,并隐藏其内部的复杂性。意味着将一组相关属性、
方法和其他成员视为一个单元或对象。对象可以控制更改属性和执行方法的方式。 BankAccount 类封装描述银行帐户的方法、字段和属性。如果没有封装,则就需要声明单独的过程和变量来存储和管理银行帐户信息,要一次处理多个银行帐户就会比较困难。封装使您可以将 BankAccount类中的数据和过程作为一个单元来使用。您可以同时处理多个银行帐户而不会混淆,因为每个帐户都由该类的一个惟一实例来表示。
封装还使您可以控制如何使用数据和过程。可以使用访问修饰符(如
Private或 Protected)来防止外部过程执行类方法或读取与修改属性和字段中的数据。应当将类的内部详细信息声明为 Private以防止在类外使用它们,此技术称为“数据隐藏”。在 Bank- Account类中,客户信息(如帐户余额)就是用这种方式保护的。封装的一个基本规则是类数据应当只能通过 Property过程或方法来修改或检索。隐藏类的实现详细信息可以防止这些信息被以不希望的方式使用,并使您可以在以后修改此类项时没有兼容性问题方面的风险。
“继承”是指基于现有类创建新类的能力。新类继承基类的所有属性、
方法和事件,而且可用其他属性和方法自定义该新类。例如,可基于小汽车类创建名为越野车的新类。越野车类从小汽车类继承颜色属性,而且可有其他属性,如四轮驱动( FourWheelDrive)。
“多态性”意味着可以有多个可互换使用的类,即使每个类以不同方式实现相同属性或方法。多态性是面向对象编程的精华。利用多态性,
根据调用方法的实例类型,同一个基方法可执行不同的操作。
多态性语言具有灵活、抽象、代码共享等优点,很好地解决了应用程序中函数同名的问题。例如,一个为整形数排序的函数,利用多态性,
也可用于浮点数的排序。
1.6 窗体及常用控件窗体是编写 Visual Basic的 Windows应用程序的基础,是用于
Microsoft Windows应用程序开发的、基于 NET Framework的新平台。它使您能开发丰富的 Windows应用程序。另外,Windows窗体可作为多层分布式解决方案中的本地用户界面。
1.6.1 Windows窗体的常用属性和方法
1,Windows窗体的常用属性当新建一个,Windows应用程序”时,就会显示一个设计窗体。
对窗体进行设计的第一步是设置其属性。在设计时,可在“属性”
窗口中执行此操作。然后即可在窗体上放置控件,这些控件可自动继承与其容器窗体某些相同的属性,如在设计窗体中修改了
Font字体的默认值后添加一些新的控件,如 Button控件,则 Button
控件的 Font字体的属性值与窗体中修改后的 Font字体值相同。
窗体的属性有几十个,一般采用默认值,需要更改的不多。
设置新建窗体的属性,既可以通过编写代码,也可以通过使用 【 属性 】 窗口来设置窗体的属性。设计时所做的属性设置都将作为应用程序每次运行时的初始设置。设置窗体属性的操作步骤如下:
( 1)打开 【 属性 】 窗口。可单击 【 视图 】 菜单中的“属性窗口”打开。
( 2)选中目标窗体。窗体的名称将出现在 【 属性 】 窗口顶部的下拉列表框中。
( 3)在 【 属性 】 窗口中,单击要设置的属性行,输入新的属性设置。
( 4)可通过 【 属性 】 窗口中的 和 按钮选择属性的显示方式。当选择了某个属性时,该属性的相关描述就会自动显示在 【 属性 】 窗口的底部,您可通过这种方式了解一些属性的含义。
2,Windows窗体的常用方法窗体提供了许多特定的方法,也就是它们所能执行的操作,
通过调用窗体的某一方法,执行指定的操作。
可在代码窗口中输入,Me.”,系统将弹出一个下拉列表框,
列出了所有可用的窗体方法、属性等。将鼠标点击某一方法名列表项后,系统将自动提示该方法的调用格式及简短的功能说明,要知该方法详细说明及示例可查阅 MSDN。
在窗体的代码窗口中输入方法调用,即可实现该方法的操作。
方法调用的语法格式为:
<对象名 >,方法名 [(参数列表 )]
<对象名 >:可以是窗体及其他对象名。
[(参数列表 )]:既然方法是一个过程或函数,当然也就可能有参数。
例如,显示一个 Form2窗体,可以用 Show方法:
Form2.Show()
Me表示当前窗体。
例如,关闭当前窗体时应调用窗体的 Close方法,代码如下:
Me.Close()
1.6.2 Windows窗体的事件事件是可以通过代码响应或“处理”的操作。事件可由用户操作(如单击鼠标或按某个键)、程序代码或系统生成。
事件驱动的应用程序通过执行代码而响应事件。每个窗体和控件都公开一组预定义事件,您可根据这些事件进行编程。
如果发生其中一个事件并且在相关联的事件处理程序中有代码,则调用该代码。
对象引发的事件类型会发生变化,但对于大多数控件,很多类型是通用的。例如,大多数对象都处理 Click事件,即如果用户单击窗体,将执行该窗体的 Click事件处理程序中的代码。
注意:许多事件会与其他事件同时发生。例如,在发生
Click事件的过程中,还发生 MouseDown和 MouseUp事件。
下列示例显示窗体对象 Form1的 Click事件和 MouseDown的事件处理程序。
当引发 Form1的 Click事件时,使 Form1窗体的标题栏显示
,Form1_Click”,而引发 Form1的 MouseDown 事件时,使
Form1窗体内的 Label1对象显示,Form1_MouseDown”。步骤如下:
( 1)启动 Visual Studio.NET集成开发环境。
( 2)创建名为,EventTest”的 Windows 应用程序。
( 3)在 【 文件 】 菜单上指向 【 新建 】,然后单击“项目”。
( 4)在 【 项目类型 】 窗格中,选择,Visual Basic项目”。
( 5)在 【 模板 】 窗格中,选择,Windows 应用程序”。
( 6)从 【 工具箱 】 中拖动一个 Label控件到窗体上。
将语句 Me.Text =,Form1_Click”添加到 Form1_Click()事件过程中。
将语句 Me.Label1.Text = "Form1_MouseDown"添加到
Form1_MouseDown ()事件过程中。即:
Private Sub Form1_Click(ByVal sender As Object,ByVal e
As System.EventArgs) Handles MyBase.Click
Me.Text =,Form1_Click”?窗体标题栏显示
,Form1_Click”
End Sub
Private Sub Form1_MouseDown(ByVal sender As _ Object,
ByVal e As ystem.Windows.Forms,_ SMouseEventArgs) Handles
MyBase.MouseDown
Label1对象显示,Form1_MouseDown”
Me.Label1.Text = "Form1_MouseDown"
End Sub
按快捷键 【 F5】 运行该应用程序后,用鼠标单击 Form1窗体一次,结果如图 1-15所示,即同时引发并执行了上述两个过程。
图 1-15 响应事件过程事件处理程序是绑定到事件的方法。当引发事件时,执行事件处理程序内的代码。每个事件处理程序提供两个使用户得以正确处理事件的参数。
一个是 sender参数,它提供对引发事件的对象引用。第二个参数 e则负责传递针对要处理的事件的对象。通过引用对象的属性(有时引用其方法)可获得一些信息,如鼠标事件中鼠标的位置或拖放事件中传输的数据。
1.6.3 多文档界面( MDI)应用程序在 Windows应用程序中,用户界面的外观有三种主要样式:
单文档界面( SDI),如图 1-16所示。
多文档界面( MDI),如图 1-17所示。
资源管理器样式界面,如图 1-18所示。
图 1-16 SDI 应用程序外观 图 1-17 MDI 应用程序外观 图 1-18 资源管理器样式界面
SDI界面的一个示例是 Microsoft Windows的“写字板”软件。在“写字板”中,每次只能打开一个文档,要打开另一个文档必须先关闭当前的文档。
Microsoft Excel是 MDI界面的一个典型范例。它允许同时显示多个文档,每个文档在其自己的窗口中显示。在图 1-18
中,窗体 Microsoft Excel是 MDI父窗体,它是包含 MDI子窗口
01和 02的窗体,子窗体是用户与 MDI应用程序进行交互的窗口。
资源管理器样式界面是包含两个“窗格”或区域的单个窗口,通常由左侧的树或分层视图以及右侧的显示区域组成,
与,Microsoft Windows 资源管理器”一样。此类界面适合于定位或浏览大量的文档、图片或文件。
在确定哪种界面样式最适合时,需要考虑应用程序的用途。
SDI样式是 Windows应用程序默认的布局选项。创建 MDI应用程序时有许多独特的注意事项和技巧。本章仅介绍创建 MDI窗体的具体步骤:
( 1)创建 Windows应用程序。
( 2)在 【 属性 】 窗口中,将 Form1窗体的 IsMDIContainer属性设置为 True。这将该窗体指定为 MDI父窗体。
( 3)将 MenuStrip组件从 【 工具箱 】 拖到 Form1窗体上。创建一个 Text属性设置为 【 文件 】 的顶级菜单项,且带有名为
“新建”和“关闭”的子菜单项。再创建一个名为 【 窗口 】 的顶级菜单项。
( 4)在 【 项目 】 主菜单中,单击“添加 Windows 窗体”命令项,可创建 Form2窗体。 Windows窗体设计器打开,其中显示
Form2窗体。
( 5)从 【 工具箱 】 中拖动一个 Label控件到 Form2窗体上。
( 6)输入 MDI窗体的“新建”及“关闭”命令项处理程序
( 【 窗口 】 菜单的处理程序暂未考虑):
Private Sub 新建 ToolStripMenuItem_Click(ByVal sender
As System.Object,ByVal e As System.EventArgs) Handles
新建 ToolStripMenuItem.Click
Dim child As New Form2
Static childCount As Int16
childCount += 1
child.Text = "Child " + childCount.ToString()
child.MdiParent = Me
child.Show()
End Sub
Private Sub 关闭 ToolStripMenuItem_Click(ByVal sender
As System.Object,ByVal e As System.EventArgs) Handles
关闭 ToolStripMenuItem.Click
End
End Sub
( 7)在 MDI子窗体中键入以下代码:
Private Sub Form2_Click(ByVal sender As Object,ByVal
e As System.EventArgs) Handles MyBase.Click
Me.Label1.Text = "这是 MDI子窗体 "
End Sub
按快捷键 【 F5】 运行该应用程序后,执行“新建”菜单命令后,用鼠标单击 Form2窗体 2次,结果如图 1-19所示。
图 1-19 一个简单的 MDI窗体
1.6.4 Windows 窗体常用控件简介
Windows 窗体控件是从 System.Windows.Forms.Control
直接或间接派生的类。当设计和修改解决方案的用户界面时,
需要添加、对齐和定位控件。控件是包含在窗体对象内的对象。每种类型的控件都具有其自己的属性、方法和事件,以使该控件适合于特定用途。
下面按照字母顺序列出了可在 Windows窗体中常用的控件。
除了所包含的 Windows窗体控件之外,还可以向 Windows窗体添加 ActiveX控件和自定义控件。如果在这里列出的控件中没有找到需要的控件,还可以创建自己的控件。有关详细信息,请参见 MSDN的,Windows 窗体的控件创作”。有关选择所需控件的更多信息,请参见附 A“Windows窗体控件”。
1.7 应用程序开发步骤
Windows窗体设计器为创建 Windows应用程序提供快速开发解决方案。通过 Visual Basic.NET创建 Windows应用程序一般包括以下一些基本步骤。
1.7.1 应用程序需求分析在开发任何应用程序之前,开发者应该首先分析此应用程序将要完成什么功能,当功能比较多时,还要将不同的功能分类(模块),以便用户的操作使用。同时需要考虑安排几个窗体,每个窗体设置哪些控件,执行什么事件。此外,还要分析各功能之间存在什么样的联系,各功能模块的入口数据来自哪里,本模块采用什么数据结构,如何保证数据的安全性及可靠性,程序代码应如何编写等等。
1.7.2 创建用户界面对用户应用程序进行了认真的需求分析之后,应新建一个
Windows应用程序项目。在创建一个新的 Windows应用程序项目时,Visual Basic.NET会自动创建一个空白的默认名为
Forml的窗体,向窗体添加相应的控件对象,创建用户界面。
用户界面除要保证本窗体模块的功能实现外,还要适当调整控件的大小、位置及属性,使之既方便用户的操作又使界面美观,若能使用户在操作时有那种爱不释手感觉最好。
1.7.3 设置用户界面对象的属性在窗体中添加完所需的控件对象之后,可以在属性窗口或者代码窗口中设置它们的一些属性,以满足设计及美观的需要。
1.7.4 编写程序代码在完成了用户界面的设计之后,就可以编写程序代码,以响应用户和系统事件,也就是通过代码决定当发生什么事件时执行什么操作。需要说明的是,对于事件过程,应避免手工键入事件过程的声明部分及过程的结尾部分,而让系统自动生成,以免发生不必要的错误。
1.7.5 测试和调试应用程序测试可以完成许多事,但最重要的是可以衡量正在开发的软件的质量,检查应用程序是否能正确完成用户提出的所有功能。调试程序是对测试程序过程中发现的问题,进行问题分析查找及修正软件规范的要求不止是设置基准和列出功能。它还提供关于产品的所有测试的要求。一个复杂的程序设计,对任何一个编程人员来说都很难一次编制成功。一个有经验的程序员,
不是由于他不犯错误,而是因为他犯了错误后,能及时通过调试工具和调试技术很快地找到错误的所在,分析并改正错误。所以,能灵活运用调试工具及调试技术是一个高级编程人员必须具备的素质。
Visual Basic.NET为程序调试提供了一组交互的、有效的调试工具,这些调试支持包括:设置新断点、逐语句、逐过程地控制程序的运行,利用断点窗口及命令窗口检查一些变量及表达式的值等。使用这些调试工具,可以快捷有效地检查程序中错误产生的地点和原因。最终使程序能正确地完成设计的目标。
1.7.6 生成可执行文件在完成上述工作后,需要创建项目的发布版本,并且要再次对它进行测试和调试,将构成程序的各种文件编译为独立的可执行文件,使之可直接在 Windows环境中运行,包括那些没有安装 Visual Studio.NET的计算机。
对于较复杂的程序常常需要其他一些文件的支持,例如动态链接库( DLL)文件等。使用 Visual Basic.NET提供的“安装向导”,可以对所有需要的文件进行打包,并自动创建安装程序,以保证用户在运行了安装程序后能得到所有需要的文件和各种初始设置。
1.8 实践检验理论巩固
( 1)简述,NET框架的结构和特点。
( 2)什么是类、对象及对象的属性、事件和方法?
( 3)简述 Visual Basic提供“标识符类型字符”可视化编程的一般步骤。
( 4)如何在窗体中输出:“大家都来学用 Visual Basic.NET”?
( 5)理解单击( Click)和双击( DoubleClick)事件。单击或双击窗体改变窗体的标题。
上机实战
( 1)编写一个简单程序。要求:单击不同的命令按钮显示不同的内容。
( 2)建立一个 MDI窗体。父窗体的 Text属性值为“父窗体”,
子窗体的 Text属性值为“子窗体”。
MSDN 的使用
(1) 安装
(2) 动态帮助
(3) 索引
(4) 目录
(5) 相关网站小结:
1.1,NET Framework简介
1.2 Visual Studio.NET的安装
1.3 Visual Studio集成开发环境
1.4 创建一个简单的 Windows应用程序项目
1.5 面向对象程序设计的基本概念窗体及常用控件
1.6 窗体及常用控件
1.7 应用程序开发步骤对于编写代码,我们还应当记住下列两条:
1.模块化。
2.模块内强内聚,模块间弱耦合。
学习程序设计语言的技巧:
1.多看资料。
2.多上机。
3.看资料和上机相结合。
作业:
理论巩固
1,2,3
上机实战
1,2,3,4
本章上机:
1,熟悉 IDE
2,熟悉窗体、常用控件的属性设置。
3,编程实现上机实战的 1,2,3,4题