VBNET程序设计及项目实训课件_第1页
VBNET程序设计及项目实训课件_第2页
VBNET程序设计及项目实训课件_第3页
VBNET程序设计及项目实训课件_第4页
VBNET程序设计及项目实训课件_第5页
已阅读5页,还剩502页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目一创建VB.NET程序开发环境

任务1创建VB.NET程序开发环境图1-1VisualStudio2008安装界面图1-2用户协议界面图1-3安装选择图1-4自定义安装图1-5安装进度图1-6安装完成提示1.2启动VisualStudio2008图1-7第一次启动界面图1-8起始页图1-9起始页1.3熟悉VisualStudio2008编程环境VisualStudio2008将支持程序开发的各种功能集成在一个公共的工作环境中,称之为“集成开发环境”。在该编程开发环境中提供了各种控件、窗口和方法,用户可以方便的进行各种应用程序的开发,以及在各种开发界面中切换,可以在很大程度上节约开发时间。VisualStudio2008的开发环境主要由以下几部分组成:菜单栏、工具栏、窗体、工具箱、属性窗口、解决方案资源管理器和服务器资源管理器等。1.菜单栏:菜单栏包括“文件”、“编辑”、“视图”、“项目”、“数据”、“工具”、“调试”、“测试”、“分析”、“窗口”和“帮助”等。其中包含了开发VisualBasic程序常见的命令。文件菜单中常用的功能包括:“新建”:支持新建项目、网站等应用程序;“打开”:支持打开已有的项目、网站等应用程序;“关闭”:关闭正在编写的项目;“关闭解决方案”:关闭正在编写的解决方案;“退出”:退出VisualStudio2008编程环境。图1-10文件菜单编辑菜单常用的功能有:撤销、重复、剪切、复制、粘贴等。视图菜单常用的功能有:“代码”:打开代码编辑界面;“设计器”:打开设计器编辑界面;“服务器资源管理器”:打开和服务器以及数据库相关内容的操作界面;“解决方案资源管理器”:打开解决方案资源管理器窗口;“类视图”:打开类视图窗口;“工具箱”:打开工具箱窗口;“属性窗口”:打开控件的属性窗口。图1-11视图菜单调试菜单常用的功能如下:“启动调试”:启动当前应用程序的调试,快捷键是F5;“开始执行(不调试)”:启动当前应用程序的执行,不调试,快捷键是Ctrl+F5;图1-12调试菜单2.工具栏工具栏在菜单栏的下边,工具栏提供了常用命令的快速访问按钮,单击某个按钮,可执行对应的操作,效果和使用菜单是同样的。3.窗体在创建了一个Windows应用程序后,系统会自动生成一个默认的窗体,也就是应用程序界面。在开发过程中,用户编程使用的各种控件就是布局在窗体之上的,当程序运行时,用户所看到的就是窗体。

图1-13窗体4.工具箱工具箱中提供了各种控件、容器、菜单和工具栏、组件、打印、对话框和报表等。在默认情况下,工具箱将控件和各种组件按照功能的不同进行了分类。用户在编程过程中,根据需要选择各种控件和组件。如果所需要的控件或者组件在工具箱中找不到,可以单击工具箱的右键,选择“选择项”,进入“选择工具箱”对话框。图1-14工具箱图1-15选择工具箱5.属性窗口属性窗口包含选定对象(Form窗体或控件)的属性、事件列表。在设计程序时可以通过修改对象的属性来设计外观和相关值,这些属性值将是程序运行时各对象属性的初始值属性窗口包括以下几个按钮“按分类排序”、“字母顺序”、“属性”、“事件”分别用于设置显示属性还是事件,以及显示是按照分类还是按照字母顺序

图1-16属性窗口6.解决方案资源管理器解决方案资源管理器采用Windows资源管理器的界面,按照文件层次列出当前解决方案中的所有文件。解决方案资源管理器包括以下几个按钮:“显示所有文件”、“刷新”、“查看代码”、“视图设计器”以及“查看类关系图”

图1-17解决方案资源管理器图1-18显示所有文件任务2VB.NETWindows应用程序设计流程2.1建立一个VB.NETWindows应用程序1.在VisualStudio2008中,创建一个VisualBasic程序意味着创建一个VisualBasic解决方案。创建一个新项目的步骤如下:首先启动VisualStudio2008编程环境,在菜单“文件”中,选择“新建”“项目”,系统会出现新建项目对话框图1-19新建项目对话框在左侧选择VisualBasic语言,在右侧的VisualStudio已安装的模板中,选择“Windows窗体应用程序”模板,在名称中输入解决方案的名称,位置中选择解决方案所保存的位置,然后点击“确定”,完成项目的创建。

图1-20完成项目创建效果2.打开一个项目如果一个VisualBasic项目已经创建好,需要继续编写,这时可以选择打开项目。步骤如下:选择“文件”菜单,单击“打开”“项目项目”,在弹出的“打开项目”对话框中,选择要打开的项目,一般应选择扩展名为“.sln”的文件

图1-21打开项目对话框3.保存项目当编辑完项目后,需要保存项目,步骤为:单击工具栏中的“全部保存”按钮,或者单击“文件”菜单“全部保存”命令。4.编译运行项目设计一个项目时,该项目处于编辑状态,如果需要测试已编辑的内容,需要编译和运行项目,可以有以下几种方式对项目进行测试:单击工具栏中的“启动调试”按钮;单击“调试”菜单“启动调试”选项或“开始执行(不调试)”选项;按键盘快捷键F5或Ctrl+F5;例如,在项目中添加一个按钮控件,并双击按钮,编写一个简单的事件,即给按钮的单击事件添加一个提示语句:MessageBox.Show(“Hello,欢迎来到VisualBasic编程环境”)图1-22程序运行效果2.2VB.NETWindows应用程序的设计流程1.在VisualStudio2008编程环境下开发VB.NETWindows应用程序一般具有以下几个步骤:(1)需求分析根据实际应用需要,进行需求分析,需要设计程序具有什么样的功能,对应的功能需要什么样的控件来实现,以及需要编写什么样的代码等。(2)新建VB.NETWindows应用程序项目打开VisualStudio2008,新建一个VB.NETWindows应用程序,一个应用程序就是一个项目,用户根据所要创建的程序要求,选择合适的应用程序类型。(3)新建用户界面建立项目之后,根据程序的功能要求,在窗体上合理的布置控件,并调整合适的大小和位置。(4)设置对象的属性布局好控件之后,需要对控件的外观以及初始状态进行设置,以满足程序的需要,设置属性可以打开“属性窗口”进行设置。(5)编写代码布局好控件并设置好控件的初始属性之后,就可以编写代码了。可以点击控件或窗体的右键,通过“属性窗口”中的事件选择需要编写的事件,也可以直接进入代码界面编写代码。代码的编写将根据程序的需要进行选择。(6)运行调试程序完成上述步骤后,就可以运行程序,并做测试,以发现问题并及时修改。调试和改错是程序开发过程中非常重要的步骤,需要反复使用,以尽可能的优化程序。(7)生成可执行文件程序开发完成并正确运行后,需要将程序生成可执行文件,发布出去。(8)部署应用程序编写好的应用程序,可以在VisualStudio2008中进行部署,以自动创建安装文件。2.创建一个简单的计算器程序设计制作一个简单的VisualBasicWindows应用程序,将两个文本框输入的数字进行相加,结果显示在标签控件Label4上

图1-23程序运行效果1.需求分析该应用程序的功能是:有两个文本框作为用户的输入,用户在输入之后,需要判断是否是数字,如果是数字,点击“两操作数相加”按钮时,可以将两个操作数的值相加并显示在Label4控件上。如果两个文本框中有一个输入的不是数字,将给出提示。2.新建项目1)选择“文件”“新建项目”,创建一个VisualBasicWindows应用程序

图1-24新建项目2)在“新建项目”对话框中,项目类型选择“VisualBasic”,模板中选择“Windows应用程序”,项目名称为WindowsApplication8,单击“确定”按钮,即可新建一个VB.NETWindows应用程序项目。3.创建用户界面创建好一个VisualBasicWindows应用程序后,系统会自动创建一个空白的Form窗体。接下来添加控件,具体如下:首先拖入三个Label标签控件,分别用于显示“操作数1:”、“操作数2”和“结果”三个文本。再拖入两个TextBox文本框控件,用于接受用户输入两个操作数。最后拖入一个按钮控件。将控件的位置调整好。4.设置控件的属性拖入三个Label标签控件之后,分别点控件的右键,选择“属性”,进入属性窗口,分别设置这三个Label标签控件的Text属性为“操作数1:”、“操作数2”和“结果”。

图1-25属性设置打开按钮控件的属性窗口,设置其Text属性为“两操作数相加”

图1-26属性设置图1-27属性设置后效果5.编写事件代码

编写事件代码是在代码编辑界面,在Form窗体空白处点击右键,选择“查看代码”,将进入代码编辑界面

图1-28代码界面代码1-1:按钮的单击事件PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickDima1AsIntegerDima2AsIntegerDima3AsIntegerTrya1=Convert.ToInt32(TextBox1.Text)a2=Convert.ToInt32(TextBox2.Text)a3=a1+a2Label4.Text=Convert.ToString(a3)CatchexAsException

MessageBox.Show(ex.ToString())EndTryEndSub6.运行调试程序并测试

程序编写完成后,按“F5”键,或者单击“启动调试”按钮,即可启动调试应用程序。

图1-29程序运行效果当输入内容为数字并点击“两操作数相加”按钮时,两数相加并显示在结果中。当输入的操作数不是数字,点击“两操作数相加”按钮后,会给出错误提示效果如图1-30和图1-31所示。

图1-30程序测试图1-31程序测试7.生成可执行文件程序运行成功后,系统会在项目文件夹下的bin文件夹下,自动创建一个可执行文件(.exe文件)。在Windows操作系统下双击此文件,即可脱离编译环境单独运行。效果如图1-32所示。图1-32.dll文件项目小结本项目介绍了VB.NET编程环境的创建方法,安装VisualStudio2008的详细步骤。介绍了VisualStudio2008编写VB.NETWindows应用程序的编程环境,介绍了常用的菜单的功能和常用的窗口,包括“工具箱”、“属性窗口”、“解决方案资源管理器”和编程窗口。通过实例介绍了VB.NETWindows应用程序的编写流程。项目拓展1、编写一个简单的VB.NETWindows应用程序,要求:用户输入用户名,能够给出相应的问候。2、编写一个简单的VB.NETWindows应用程序,要求:实现用户的注册,用户输入“用户名”、“密码”、“个人简介”等信息,点击“提交”按钮后,可以通过Label标签控件显示出注册信息。项目二设计制作计算器任务1掌握VB.NET基本输入输出控件1.1创建Label控件显示文本1.要求和目的要求:设计一个界面,包含一个Label标签控件和一个Button按钮,Label标签控件能够显示按钮点击了几次。效果如图2-1所示。图2-1程序运行效果目的:掌握Button按钮控件的常用事件;掌握Label控件常用的属性;掌握基本数据类型的使用方法;2.设计步骤第一步:界面设计打开VisualStudio2008编程环境,创建一个名称为2-1-1的VisualBasicWindows应用程序,首先将窗体名称改为Label。在窗体中拖入一个Label文本标签控件,用于显示按钮的单击次数,再拖如一个Button按钮控件,单击该按钮,在文本框中显示次数。本程序的设计界面如图2-2所示。图2-2程序设计界面第二步:编写事件代码进入该程序的代码文件,首先定义一个全局变量:DimiAsInteger=1双击Button按钮控件,进入该按钮的单击事件,编写代码如下:

PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickLabel1.Text="单击第"&i&"次"i+=1EndSub第三步:编译运行并测试编写代码之后,点击保存按钮保存编写好的代码。按F5键运行改程序,并测试,效果如图2-3所示。图2-3程序运行效果3.相关知识点(1)Label控件概述Label控件也就是文本控件,用来显示文本,但是不能输入。(2)Label控件常用的事件Click事件:该事件在Label控件被单击的时候触发。(3)Label控件常用的属性Enable属性:该属性设置Label控件是否可用。Visible属性:该属性设置Label控件是否可见。Font属性:该属性设置Label控件所显示文本的字体。BackColor属性:该属性设置Label控件的背景色。TextAlign属性:该属性设置Label控件的文本对齐方式。BackgroudImage属性:该属性设置Label控件的背景图片。Text属性:该属性设置Label控件显示的文本内容。1.2创建TextBox控件输入框1.要求和目的要求:创建一个程序,要求能输入姓名和专业班级,点击提交后可以显示出用户所提交的信息,如图2-4所示。目的:掌握TextBox控件常用的属性;掌握Label控件常用的属性;图2-4程序运行效果2.设计步骤第一步:界面设计打开VisualStudio2008编程环境,新建一个名称为2-1-2的VisualBasicWindows应用程序。在窗体中拖入三个Label标签,将其Text属性分别改为“”、“姓名:”、“专业班级”。在窗体中拖入三个个TextBox控件,最后拖入一个Button按钮控件,将其Text属性改为“提交”。改程序的设计界面如图2-5所示。图2-5程序设计界面第二步:编写事件代码双击“提交”按钮,进入该按钮的单击事件,编写代码如2-1所示。代码2-1:按钮的单击事件

PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickDima1AsStringDima2AsStringa1=TextBox1.Text.ToString()a2=TextBox2.Text.ToString()Label1.Text="您提交的信息是:"+a1+a2EndSub第三步:编译运行并测试编写好代码后,点击“保存”按钮保存该程序,按F5运行该程序,并测试,效果如图2-6所示。图2-6程序运行效果3.相关知识点(1)TextBox控件概述TextBox文本框控件是最基本的输入控件,用来接受键盘输入的文本。(2)TextBox控件常用的事件TextChanged事件:该事件在TextBox控件文本内容改变时触发。(3)TextBox控件常用的属性Enable属性:该属性设置TextBox控件是否可用。Visible属性:该属性设置TextBox控件是否可见。Font属性:该属性设置TextBox控件所显示文本的字体。BackColor属性:该属性设置TextBox控件的背景色。TextAlign属性:该属性设置TextBox控件的文本对齐方式。BackgroudImage属性:该属性设置TextBox控件的背景图片。ForeColor属性:该属性设置TextBox控件字体的颜色。Text属性:该属性用来显示和接受TextBox控件的文本,既可以显示也可以输入。格式如下:TextBox1.Text=“欢迎您”’在该文本框中,将显示“欢迎您”三个字DimaasString=TextBox1.Text’接受TextBox控件中的文本MutiLine属性:该属性设置文本框是否允许多行显示,True代表可以多行显示,False代表只能单行显示。PasswordChar属性:该属性设置是否为密码框,如果为空代表不是密码框,如果输入特定字符,如“*”,则代表使用“*”密文显示文本。ReadOnly属性:该属性为True则控件只能读不能写。任务2设计制作计算器1.要求与目的要求:建立一个如图2-7所示的计算器界面,具有数字键“0~9”、小数点键“.”、开始键“ON”、运算符按键“+-*/”、计算按键“=”,要求各个数字键及功能键能完成正常的数学计算。图2-7计算机运行效果目的:掌握按钮控件的使用方法;掌握字符串处理的方法;掌握常见算术运算的实现方法;掌握文本框控件的使用方法;图2-7计算机运行效果2.设计步骤第一步:界面设计打开VisualStudio2008编程环境,新建一个名称为2-2-1的VisualBasicWindows应用程序。在窗体中拖入一个TextBox文本框控件,Button按钮控件共计19个,对应0~9数字键,“+-*/”运算符键,以及其它按键。窗体及控件的主要属性设置如表2-1所示。

表2-1窗体及控件的主要属性控件属性属性值说明Form1NameForm1窗体名称TextBox1NameTextBox1文本框控件名称Button1NameButton1按键“0”Button2NameButton2按键“.”Button3NameButton3按键“归零”Button5NameButton5按键“=”Button6NameButton6按键“1”Button7NameButton7按键“2”Button8NameButton8按键“3”Button9NameButton9按键“+”Button10NameButton10按键“-”Button11NameButton11按键“4”Button12NameButton12按键“5”Button13NameButton13按键“6”Button14NameButton14按键“*”Button15NameButton15按键“/”Button16NameButton16按键“7”Button17NameButton17按键“8”Button18NameButton18按键“9”Button19NameButton19按键“ON”Button20NameButton20按键“OFF”图2-8设计界面2.编写事件代码首先定义全局变量:

Dimstrmiddle()AsString={"0","0","0"}Dimcalmethod1AsString="0"Dimcalmethod2AsString="0"DimstrdotAsBoolean=False双击Button1数字键“0”按钮,进入该按钮的事件,编写代码如2-2所示。代码2-2:按钮的单击事件PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickIfstrmiddle(0)="0"ThenTextBox1.Text=strmiddle(0)&"."

ElseIf

strdot=FalseThenstrmiddle(0)=strmiddle(0)&"0"TextBox1.Text=strmiddle(0)&"."Elsestrmiddle(0)=strmiddle(0)&"0"TextBox1.Text=strmiddle(0)EndIfEndSub双击Button2小数点键“.”,进入该按钮的事件,编写代码如2-3所示。代码2-3:按钮的单击事件PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click

strdot=Truestrmiddle(0)=strmiddle(0)&"."TextBox1.Text=strmiddle(0)EndSub双击Button3“归零”按键的按钮,进入该按钮的事件。代码2-4:按钮的单击事件PrivateSubButton3_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton3.Clickstrmiddle(0)="0"strmiddle(1)="0"strmiddle(2)="0"calmethod1="0"calmethod2="0"

strdot=FalseTextBox1.Text="0."EndSub双击Button5计算按键“=”按钮,进入该按钮的事件

代码2-5:按钮的单击事件PrivateSubButton5_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton5.ClickIfstrmiddle(2)="0"ThenSelectCasecalmethod1Case"+"TextBox1.Text=Str(Val(strmiddle(1))+Val(strmiddle(0)))Case"-"TextBox1.Text=Str(Val(strmiddle(1))-Val(strmiddle(0)))Case"*"TextBox1.Text=Str(Val(strmiddle(1))*Val(strmiddle(0)))Case"/"Ifstrmiddle(0)="0"ThenTextBox1.Text="error!"ElseTextBox1.Text=Str(Val(strmiddle(1))/Val(strmiddle(0)))EndIfEndSelect

ElseIfcalmethod2="*"Thenstrmiddle(0)=Str(Val(strmiddle(0))*Val(strmiddle(2)))SelectCasecalmethod1Case"+"TextBox1.Text=Str(Val(strmiddle(1))+Val(strmiddle(0)))Case"-"TextBox1.Text=Str(Val(strmiddle(1))-Val(strmiddle(0)))Case"*"TextBox1.Text=Str(Val(strmiddle(1))*Val(strmiddle(0)))Case"/"Ifstrmiddle(0)="0"ThenTextBox1.Text="error!"ElseTextBox1.Text=Str(Val(strmiddle(1))/Val(strmiddle(0)))EndIfEndSelectElse:calmethod2="/"strmiddle(0)=Str(Val(strmiddle(2))/Val(strmiddle(0)))SelectCasecalmethod1Case"+"TextBox1.Text=Str(Val(strmiddle(1))+Val(strmiddle(0)))Case"-"TextBox1.Text=Str(Val(strmiddle(1))-Val(strmiddle(0)))Case"*"TextBox1.Text=Str(Val(strmiddle(1))*Val(strmiddle(0)))Case"/"Ifstrmiddle(0)="0"ThenTextBox1.Text="error!"ElseTextBox1.Text=Str(Val(strmiddle(1))/Val(strmiddle(0)))EndIfEndSelectEndIfEndSub双击Button6数字键“1”按钮,进入该按钮的事件代码2-6:按钮的单击事件PrivateSubButton6_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton6.ClickIfstrmiddle(0)="0"Thenstrmiddle(0)="1"TextBox1.Text=strmiddle(0)&"."

ElseIf

strdot=FalseThenstrmiddle(0)=strmiddle(0)&"1"TextBox1.Text=strmiddle(0)&"."Elsestrmiddle(0)=strmiddle(0)&"1"TextBox1.Text=strmiddle(0)EndIfEndSub双击Button7数字键“2”按钮,进入该按钮的事件。代码2-7:按钮的单击事件PrivateSubButton7_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton7.ClickIfstrmiddle(0)="0"Thenstrmiddle(0)="2"TextBox1.Text=strmiddle(0)&"."

ElseIf

strdot=FalseThenstrmiddle(0)=strmiddle(0)&"2"TextBox1.Text=strmiddle(0)&"."Elsestrmiddle(0)=strmiddle(0)&"2"TextBox1.Text=strmiddle(0)EndIfEndSub双击Button8数字键“3”按钮,进入该按钮的事件。代码2-8:按钮的单击事件PrivateSubButton8_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton8.ClickIfstrmiddle(0)="0"Thenstrmiddle(0)="3"TextBox1.Text=strmiddle(0)&"."

ElseIf

strdot=FalseThenstrmiddle(0)=strmiddle(0)&"3"TextBox1.Text=strmiddle(0)&"."Elsestrmiddle(0)=strmiddle(0)&"3"TextBox1.Text=strmiddle(0)EndIfEndSub双击Button9计算键“+”按钮,进入该按钮的事件。代码:2-9:按钮的单击事件PrivateSubButton9_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton9.ClickIfcalmethod1="0"Thencalmethod1="+"strmiddle(1)=strmiddle(0)strmiddle(0)="0"Else:SelectCasecalmethod1Case"+"strmiddle(1)=Str(Val(strmiddle(0))+Val(strmiddle(1)))strmiddle(0)="0"calmethod1="+"Case"-"strmiddle(1)=Str(Val(strmiddle(1))-Val(strmiddle(0)))strmiddle(0)="0"calmethod1="+"

Case"*"strmiddle(1)=Str(Val(strmiddle(0))*Val(strmiddle(1)))strmiddle(0)="0"calmethod1="+"Case"/"strmiddle(1)=Str(Val(strmiddle(1))/Val(strmiddle(0)))strmiddle(0)="0"calmethod1="+"EndSelectEndIfEndSub双击Button10计算键“-”按钮,进入该按钮的事件,编写代码如2-10所示。代码2-10:按钮的单击事件PrivateSubButton10_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton10.ClickIfcalmethod1="0"Thencalmethod1="-"strmiddle(1)=strmiddle(0)strmiddle(0)="0"Else:SelectCasecalmethod1Case"+"strmiddle(1)=Str(Val(strmiddle(0))+Val(strmiddle(1)))strmiddle(0)="0"calmethod1="-"Case"-"strmiddle(1)=Str(Val(strmiddle(1))-Val(strmiddle(0)))strmiddle(0)="0"calmethod1="-"Case"*"strmiddle(1)=Str(Val(strmiddle(0))*Val(strmiddle(1)))strmiddle(0)="0"calmethod1="-"Case"/"strmiddle(1)=Str(Val(strmiddle(1))/Val(strmiddle(0)))strmiddle(0)="0"calmethod1="-"EndSelectEndIfEndSub双击Button11数字键“4”按钮,进入该按钮的事件。代码2-11:按钮的单击事件PrivateSubButton11_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton11.ClickIfstrmiddle(0)="0"Thenstrmiddle(0)="4"TextBox1.Text=strmiddle(0)&"."

ElseIf

strdot=FalseThenstrmiddle(0)=strmiddle(0)&"4"TextBox1.Text=strmiddle(0)&"."Elsestrmiddle(0)=strmiddle(0)&"4"TextBox1.Text=strmiddle(0)EndIfEndSub双击Button12数字键“5”按钮,进入该按钮的事件。代码2-12:按钮的单击事件PrivateSubButton12_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton12.ClickIfstrmiddle(0)="0"Thenstrmiddle(0)="5"TextBox1.Text=strmiddle(0)&"."

ElseIf

strdot=FalseThenstrmiddle(0)=strmiddle(0)&"5"TextBox1.Text=strmiddle(0)&"."Elsestrmiddle(0)=strmiddle(0)&"5"TextBox1.Text=strmiddle(0)EndIfEndSub双击Button13数字键“6”按钮,进入该按钮的事件。代码2-13:按钮的单击事件PrivateSubButton13_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton13.ClickIfstrmiddle(0)="0"Thenstrmiddle(0)="6"TextBox1.Text=strmiddle(0)&"."

ElseIf

strdot=FalseThenstrmiddle(0)=strmiddle(0)&"6"TextBox1.Text=strmiddle(0)&"."Elsestrmiddle(0)=strmiddle(0)&"6"TextBox1.Text=strmiddle(0)EndIfEndSub双击Button14计算键“*”按钮,进入该按钮的事件。代码2-14:按钮的单击事件PrivateSubButton14_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton14.ClickIfcalmethod1="0"Thencalmethod1="*"strmiddle(1)=strmiddle(0)strmiddle(0)="0"Else:SelectCasecalmethod1Case"+"calmethod2="*"strmiddle(2)=strmiddle(0)strmiddle(0)="0"Case"-"

calmethod2="*"strmiddle(2)=strmiddle(0)strmiddle(0)="0"Case"*"strmiddle(1)=Str(Val(strmiddle(0))*Val(strmiddle(1)))strmiddle(0)="0"calmethod1="*"Case"/"strmiddle(1)=Str(Val(strmiddle(1))/Val(strmiddle(0)))strmiddle(0)="0"calmethod1="*"EndSelectEndIfEndSub双击Button15计算键“/”按钮,进入该按钮的事件。代码2-15:按钮的单击事件PrivateSubButton15_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton15.ClickIfcalmethod1="0"Thencalmethod1="/"strmiddle(1)=strmiddle(0)strmiddle(0)="0"Else:SelectCasecalmethod1Case"+"calmethod2="/"strmiddle(2)=strmiddle(0)strmiddle(0)="0"

Case"-"calmethod2="/"strmiddle(2)=strmiddle(0)strmiddle(0)="0"Case"*"strmiddle(1)=Str(Val(strmiddle(0))*Val(strmiddle(1)))strmiddle(0)="0"calmethod1="/"Case"/"strmiddle(1)=Str(Val(strmiddle(1))/Val(strmiddle(0)))strmiddle(0)="0"calmethod1="/"EndSelectEndIfEndSub双击Button16数字键“7”按钮,进入该按钮的事件。代码2-16:按钮的单击事件PrivateSubButton16_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton16.ClickIfstrmiddle(0)="0"Thenstrmiddle(0)="7"TextBox1.Text=strmiddle(0)&"."

ElseIf

strdot=FalseThenstrmiddle(0)=strmiddle(0)&"7"TextBox1.Text=strmiddle(0)&"."Elsestrmiddle(0)=strmiddle(0)&"7"TextBox1.Text=strmiddle(0)EndIfEndSub双击Button17数字键“8”按钮,进入该按钮的事件,编写代码如2-17所示。代码2-17:按钮的单击事件PrivateSubButton17_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton17.ClickIfstrmiddle(0)="0"Thenstrmiddle(0)="8"TextBox1.Text=strmiddle(0)&"."

ElseIf

strdot=FalseThenstrmiddle(0)=strmiddle(0)&"8"TextBox1.Text=strmiddle(0)&"."Elsestrmiddle(0)=strmiddle(0)&"8"TextBox1.Text=strmiddle(0)EndIfEndSub双击Button18数字键“9”按钮,进入该按钮的事件。代码2-18:按钮的单击事件PrivateSubButton18_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton18.ClickIfstrmiddle(0)="0"Thenstrmiddle(0)="9"TextBox1.Text=strmiddle(0)&"."

ElseIf

strdot=FalseThenstrmiddle(0)=strmiddle(0)&"9"TextBox1.Text=strmiddle(0)&"."Elsestrmiddle(0)=strmiddle(0)&"9"TextBox1.Text=strmiddle(0)EndIfEndSub双击功能键“ON”按钮,进入该按钮的事件。代码2-19:按钮的单击事件PrivateSubButton19_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton19.ClickTextBox1.Text="0."EndSub双击功能键“OFF”按钮,进入该按钮的事件,编写代码如2-20所示。代码2-20:按钮的单击事件PrivateSubButton20_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton20.Click

Me.Close()EndSub编写上述代码之后,保存、编译运行并测试,效果如图2-9、图2-10和图2-11所示。图2-9计算器运行效果图2-10测试计算器图2-11测试计算器项目小结本项目介绍了常见输入输出控件的属性和事件,通过实例介绍了常见输入输出控件的使用方法。最后通过设计制作计算器实例,介绍了基本语句的编写,常见计算语句的编写以及控件编程的基本思路。项目拓展在本项目的基础上,设计制作一个文章管理系统,即,在代码中存放着一些文本,要求用户通过输入框控件输入文章题目,点击“查询”按钮,如果能够搜索到文章题目,文章内容在Label控件中显示出来。项目三设计制作考试系统

考试系统是现代教育技术中常用的一种考试形式。考试系统通过计算机软件生成考试题目,考生对生成的考试题目进行答卷,答卷交卷后由考试系统自动判断答题的对错,并自动给出分数。本项目通过VB.NET设计一个简单的考试系统,设计包括“选择题”、“判断题”和“填空题”等考试题型。考生答题后,本考试系统将对答题情况进行判断,并给出相应的分数。图3-1考试系统简单考试系统的功能和使用流程如下:首先是生成考试试卷;考试界面包括“单项选择题”、“多项选择题”、“判断题”和“填空题”等题型,考生根据题目情况进行答题,答题后,点击“交卷”按钮交卷;考试系统自动评出分数,并把分数显示出来。本考试系统的设计重点为练习VB.NET控件的使用方法,并不涉及到数据库知识,所以在考试题目设置上,采用固定的题目以及事先设定好的答案。读者可以在学习完本书后面数据库相关项目之后,自行设计数据库版本的考试系统。

任务1使用常用控件简单考试系统的设计中使用了单选按钮、复选按钮、以及日期、滚动条等控件。本任务,我们将介绍考试系统涉及到的控件的创建和使用方法。1.1使用RadioButton控件和GroupBox控件考试系统的单项选择题中用到单选按钮,单选按钮可以使用RadioButton控件和GroupBox控件来实现。单选按钮的最大特点就是同一组的按钮相互排斥,每次只能选中其中的一项。如图3-2所示。图3-2RadioButton按钮单选按钮RadioButton常用的属性如下:(1)Text属性:用来设置或返回控件内显示的文本;(2)Checked属性:用来设置或返回空间按钮是否被选中。值为True时,表示控件被选中,值为False时,表示控件没有被选中;(3)AutoCheck属性:当该属性设置为True时,当选择该单选按钮时,将自动清除该组中的所有其它单选按钮。

单选按钮RadioButton常用的事件如下:(1)Click事件:当单击控件按钮时,将把控件按钮的Checked属性值设置为True,同时发生Click事件;(2)CheckedChanged事件:当Checked属性值更改时,将触发CheckedChanged事件。GroupBox控件用于为其它控件提供可识别的分组。通常,使用分组框按功能细分窗体。例如,在考试系统中,各个题目都有相应的选项,为了区分不同题目的选项,可以采用GroupBox控件进行分组区分。如图3-3所示。图3-3RadioButton分组GroupBox分组控件的常用属性如下:Text属性:用来设置或返回控件标题的文本。接下来使用RadioButton单选按钮控件创建考试系统中的单项选择题和判断题。新建一个VB.NETWindows应用程序,创建单项选择题。在新建的窗体中拖入如图3-4所示的控件。分别为:三个Label控件,其Text属性分别为:“简单考试系统”、“一、单项选择题”和“1.对于所有控件,都可以使用()属性设置或返回文本。”。再拖入四个RadioButton控件,其Text属性分别为:“A.Text”、“B.Font”、“C.Name”和“D.Caption”。图3-4单选题拖入一个Button按钮,将其Text属性设置为“交卷”,双击“交卷”按钮,添加如3-1所示的代码。代码3-1:“交卷”按钮的单击事件

PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickIfRadioButton1.CheckedThen

MessageBox.Show(“答案正确!100分")Else

MessageBox.Show(“答案错误,正确答案是A!0分")EndIfEndSub调试程序运行,选择正确答案A并点击交卷时

,显示结果如图3-5所示。选择其它错误答案时,显示结果如图3-6所示。图3-5提示图3-6提示再建立一个VB.NETWindows应用程序,创建判断题。在新创建的窗体中拖入如下控件。在窗体中拖入三个Label控件,其Text属性分别为“简单考试系统”、“二、判断题”和“1.双击“工具箱”中的控件,该控件将按其默认大小添加到窗体的左上角。”。再拖入两个RadioButton控件,其Text属性分别为“对”、“错”。最后拖入一个Button控件,其Text属性设置为“交卷”,如图3-7所示。图3-7判断题双击“交卷”按钮,进入代码编辑页面,添加如3-2所示的代码。代码3-2:“交卷”按钮的单击事件

PrivateSubButton1_Click_1(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickIfRadioButton1.CheckedThen

MessageBox.Show("正确!")Else

MessageBox.Show("错误,该判断题意是正确的!")EndIfEndSub1.2使用CheckBox控件考试系统的多项选择题中用到复选按钮,复选按钮可以使用CheckBox控件来实现。CheckBox控件和单选按钮RadioButton控件相似的地方是,都提供给用户可以选择的项,不同在于,用户可根据需要在CheckBox控件中选择其中的一项或多项。图3-8CheckBox控件复选按钮CheckBox控件最常用的属性如下:(1)Text属性:用来设置或返回控件内显示的文本;(2)Checked属性:用来设置或返回控件按钮是否被选中;复选按钮CheckBox控件最常用的事件如下:(1)Click事件:当单击控件按钮时,将把控件按钮的Checked属性值设置为True,同时发生Click事件;(2)CheckedChanged事件:当Checked属性值更改时,将触发CheckedChanged事件。接下来使用复选按钮CheckBox控件创建考试系统中的多项选择题。新建一个VB.NETWindows应用程序,创建多项选择题。在新建的窗体中拖入如下控件。首先拖入三个Label控件,其Text属性分别为“简单考试系统”、“一、多项选择题”和“1.对于显示图像的所有控件,都可以使用()方法设置图像。”。然后拖入四个CheckBox控件,其Text属性分别为“A.设置image属性”、“B.设置BackgroundImage属性”、“C.编程”和“D.设置Text属性”。最后拖入一个Button控件,其Text属性设置为“交卷”,如图3-9所示。图3-9多选题双击“交卷”按钮,在其单击事件中添加代码。代码3-3:“交卷”按钮的单击事件

PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickIfCheckBox1.CheckedAndCheckBox2.CheckedAndCheckBox3.CheckedAndNotCheckBox4.CheckedThen

MessageBox.Show("答案正确!")Else

MessageBox.Show("答案错误,正确答案是ABC")EndIfEndSub调试程序运行,选择正确答案并点击交卷时,显示结果如图3-10和图3-11所示。图3-10多选题图3-11提示当选择其它答案时,显示结果如图3-12所示。图3-12提示1.3使用日期控件常用的日期控件有两个,用于显示月历和日期,分别是MonthCalendar(月历)控件和DateTimePicker(日期选择框)控件。这两个控件的外观如图3-13所示。图3-13日期控件接下来我们是用日期控件来设计一个简单的程序,程序中用户可以使用三种控件(分别是:单选按钮、月历控件和日期选择控件)来选择日期,并形成这三种控件的互动。新建一个VB.NETWindows应用程序。在新建的窗体中拖入一个GroupBox控件,更改其Text属性为“选择月份”。在该GroupBox控件上拖入12个RadioButton单选按钮控件,把它们的Text属性分别设置为“一月”、“二月”、…“十二月”。然后拖入一个MonthCalendar和一个DateTimePicker控件。如图3-14所示。图3-14日期控件应用程序接下来,进入该程序的代码编辑页面,首先在Form1的类定义中添加如3-4所示的代码。代码3-4:changemonth方法

PrivateSubchangemonth(ByValmonthAsInteger)Ifmonth>=1Andmonth<=12ThenDimnewdateAsNewDateTime(DateTimePicker1.Value.Year,month,1)DateTimePicker1.Value=newdateMonthCalendar1.SelectionStart=newdateMonthCalendar1.SelectionEnd=newdate.AddDays(3)EndIfEndSub此段程序中,关键语句DimnewdateAsNewDateTime(DateTimePicker1.Value.Year,month,1)中,DateTimePicker1.Value.Year

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论