VBNet自学经典教程完整演示文稿_第1页
VBNet自学经典教程完整演示文稿_第2页
VBNet自学经典教程完整演示文稿_第3页
VBNet自学经典教程完整演示文稿_第4页
VBNet自学经典教程完整演示文稿_第5页
已阅读5页,还剩607页未读 继续免费阅读

下载本文档

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

文档简介

VBNet自学经典教程完整版演示文稿现在是1页\一共有612页\编辑于星期一优选VBNet自学经典PPT教程完整版现在是2页\一共有612页\编辑于星期一第一章VB.NET基础

1.1VB.NET概述

1.2VB.NET集成开发环境1.3使用帮助系统本章目录现在是3页\一共有612页\编辑于星期一1.1VB.NET概述1.1.1VisualBasic的发展20世纪60年出现Basic语言;20世纪80年代,TrueBasic、QuickBasic和TurboBasic等;1991年Microsoft公司推出VisualBasic1.0,以可视化工具为界面设计、结构化Basic语言为基础,以事件驱动为运行机制。从1991年的VB1.0至1998年的VB6.0的多次版本升级,功能更强大、完善,应用面更广;2002年正式发布VisualBasic.NET。本章目录现在是4页\一共有612页\编辑于星期一1.1.2Microsoft.NET概述什么是.NET?.NET代表了一个集合、一个环境、一个编程的基本结构,作为一个平台来支持下一代的Internet。.NET也是一个用户环境,是一组基本的用户服务,可以作用于客户端、服务器或任何地方。对初学VB的人来说,可以这样认为,.NET就是VisualStudio.NET。本章目录现在是5页\一共有612页\编辑于星期一VisualStudio.NETWindows应用程序ASP.NET程序中间语言(IL)程序(EXE)基础类库第一次编译第二次编译在不同的CPU上运行VB.NETVJ#.NETVC++.NETVC#.NETVisualStudio.NETCLR本章目录现在是6页\一共有612页\编辑于星期一1.1.3VB.NET特点1引例例1.1简单的动画演示。一行文字“欢迎使用VB.NET”在具有背景图案的窗体中上、下移动。移动方法有两种:单击手动按钮,移动5个像素单位;单击自动按钮,按定时器触发频率连续移动;当内容超出窗体范围时,进行反弹。本章目录现在是7页\一共有612页\编辑于星期一引例根据要求,用工具箱上的Label、Button、Timer等控件,在窗体上建立控件对象,进行有关的属性设置。

本章目录现在是8页\一共有612页\编辑于星期一引例:编写事件过程本章目录现在是9页\一共有612页\编辑于星期一

提供了易学易用的应用程序集成开发环境具有面向对象的可视化设计工具事件驱动的编程机制支持结构化程序设计,具有面向对象程序设计语言的所有特征具有丰富的数据类型、功能强大的类库强大的数据库功能网络功能完备的帮助功能VB.NET功能特点本章目录现在是10页\一共有612页\编辑于星期一1.2VB.NET的集成开发环境1.2.1进入VB.NET

启动VisualStudio.NET“起始页”选择“新建项目/打开项目”按钮

VisualBasic项目Windows应用程序本章目录现在是11页\一共有612页\编辑于星期一VB.NET集成开发环境本章目录现在是12页\一共有612页\编辑于星期一1.2.2主窗口三种工作模式设计模式界面的设计和代码的编制

运行模式运行应用程序

中断模式暂时中断程序运行,调试程序2.菜单栏包括11个下拉菜单3.工具栏本章目录现在是13页\一共有612页\编辑于星期一1.2.3窗体设计/代码设计窗口1.窗体设计器窗口建立VB.NET应用程序的界面(一个应用程序可以有多个窗体,通过“项目|添加Windows窗体”命令增加新窗体)。2.代码设计窗口专门用来进行代码设计,包括各种事件过程、过程和类等源程序代码的编写和修改。打开代码设计窗口的方法:双击窗体、控件或单击代码窗口上方的选项卡组对应项。本章目录现在是14页\一共有612页\编辑于星期一1.2.4属性窗口窗体和控件称为对象,每个对象用一组属性来描述其外部特征,如颜色、大小等。属性窗口用于显示和设置所选定的对象的属性。属性窗口由四部分组成:对象和名称空间列表框属性显示排列方式

属性列表框

属性含义说明本章目录现在是15页\一共有612页\编辑于星期一1.2.5解决方案资源管理器窗口项目一个独立的编程单位(包含窗体文件及其他一些相关文件),若干项目组成一个解决方案解决方案可以含有以下类型的文件:解决方案文件(.sln)

可包括用不同语言开发的项目项目文件(.vbproj)

由引用的组件和代码模块组成代码模块文件(.vb)

包括窗体文件、类模块或其他代码文件本章目录现在是16页\一共有612页\编辑于星期一1.3使用帮助系统

动态帮助属性窗口“动态帮助”标签卡内索引使用上下文相关的帮助按“F1”键网络资源通过http:///china/msdn网站,获得最新、最及时的有关帮助信息。

本章目录现在是17页\一共有612页\编辑于星期一本章小节VisualStudio.NET一个支持下一代Internet的平台VB.NET的三种工作模式

设计模式、运行模式、中断模式组成本章目录解决方案项目组件和代码模块项目组件和代码模块现在是18页\一共有612页\编辑于星期一思考题1.什么是.NET框架?2.简述VB.NET的特点3.VB.NET有多种类型的窗口,若想在设计时看到代码窗口,怎样操作?4.如何使各窗口显示或不显示?5.如果窗口布局搞乱了,如何恢复默认布局?6.解决方案与项目的区别?本章目录现在是19页\一共有612页\编辑于星期一第二章简单的VB.NET程序设计

2.1VB.NET对象的概念2.2建立简单的应用程序2.3窗体和基本控件2.4综合应用本章目录现在是20页\一共有612页\编辑于星期一2.1VisualBasic对象的概念2.1.1对象和类1.对象对象就是日常生活中的某个实在的物体例如,一个人、一辆汽车、一台电脑。对象都具有各自的特征(属性)、行为(方法)

。人有身高、体重、听力等特征;也具有起立、行走、说话、踢足球等行为。在VB.NET中,将反映对象的属性和行为封装在一起,是面向对象编程的基本元素。本章目录现在是21页\一共有612页\编辑于星期一2.类的概念类

同种对象的集合与抽象,是创建对象实例的模板,包含所创建对象的属性描述和行为特征的定义。例如,人类是具体人的抽象。每个人有不同的身高、体重等属性值和不同的行为。VB.NET工具箱中的可视图标是VB.NET系统设计好的标准控件类。通过将控件类实例化,得到真正的控件对象。在窗体上画一个控件,就将类转换为对象,创建了一个控件对象(简称控件)。本章目录现在是22页\一共有612页\编辑于星期一例如:工具箱内的TextBox是类(它确定了TextBox的属性、方法和事件)窗体上显示的是两个Text对象Text对象Text类本章目录现在是23页\一共有612页\编辑于星期一属性、事件和方法构成对象的三要素1.属性存放对象的数据(决定对象外观及功能)例如,控件名称、文本、大小等属性。对象属性的设置方法:

设计阶段利用属性窗口直接设置属性值程序运行时通过语句对象名.属性名=属性值

例如:Button1.Text="确定"注意:若属性只能在设计阶段设置,在程序运行阶段不可改变,称为只读属性。

2.1.2对象的属性、事件和方法本章目录现在是24页\一共有612页\编辑于星期一事件发生在对象上的事情同一事件,对不同的对象,会引发不同的反应:事件本章目录教师_铃声()

讲课EndSub学生_铃声()听讲接受知识EndSubVB.NET为对象预先定义了一系列的事件。例如,单击Click、获取焦点GotFocus、按下键盘KeyPress等其他人员_铃声()可不于响应EndSub现在是25页\一共有612页\编辑于星期一事件过程应用程序处理事件的步骤它针对某一对象并与该对象的一个事件相联系应用程序设计的主要工作就是为对象编写事件过程的代码。事件过程的形式如下:Sub对象名_事件(对象引用,事件信息)Handles事件处理程序

… 事件过程代码EndSub对象引用:指向引发事件的对象事件信息:与事件相关的信息事件过程本章目录现在是26页\一共有612页\编辑于星期一例2.1

在命令按钮的Click事件过程,改变按钮的字体颜色.代码说明

注意:在代码窗,自动产生事件过程的模板,不要修改模板的内容,只需键入过程的代码。一个动作可能同时发生多个事件。例如单击鼠标同时发生了:Click、MouseDown、MouseUp事件编程时,只要对需要的事件过程编码,无编码的事件为空事件,系统就不处理该事件过程。本章目录现在是27页\一共有612页\编辑于星期一事件驱动程序设计方式:程序执行的先后次序与程序设计者无关,取决于用户的操作。VB.NET程序的执行步骤:①

启动应用程序,装载和显示窗体;②

窗体(或窗体上的控件)等待事件的发生;③

事件发生时,执行对应的事件过程;④

重复执行步骤②和③。事件驱动程序设计本章目录现在是28页\一共有612页\编辑于星期一方法面向对象的程序设计语言,为程序设计人员提供了一种特殊的过程和函数,称为方法。方法是面向对象的,调用时一定要指明对象。对象方法的调用格式为:

[对象.]方法[参数名表]若省略对象,表示当前对象,一般指窗体。例如:Textbox1.Focus此语句使Textbox1控件获得焦点,光标在本文框内闪烁。本章目录现在是29页\一共有612页\编辑于星期一2.2建立简单的应用程序

例2.2编写一个人民币与美圆兑换的程序。建立一个应用程序分为以下几步进行:(1)建立用户界面的对象(2)对象属性的设置(3)对象事件过程及编程(4)保存和运行程序本章目录代码说明现在是30页\一共有612页\编辑于星期一对象事件过程及编程

代码窗口的对象列表框可显示窗体所有对象过程列表框列出所选中对象的所有事件例如,在按钮Button2的Click事件加入代码:SubButton2_Click(ByValsenderAsSystem.Object,_ByValeAsSystem.EventArgs)HandlesButton2.ClickTextBox1.Text=Val(TextBox3.Text)*Val(TextBox2.Text)EndSubVal()函数将数字字符转换成数值型

本章目录现在是31页\一共有612页\编辑于星期一保存程序和文件组成

程序存盘后将建立一个文件夹,包含如下内容:(1)xxx.sln项目关联、配置等的信息(2)xxx.suo开发环境选项的信息(3)xxx.vbproj项目文件(4)Form1.vb窗体文件(5)AssemblyInfo.vb项目集合信息(系统自动建立)(6)xxx.exe可执行文件(在Bin文件夹)(7)Bin文件夹可执行文件的默认路径,可用Application.StartupPath()获得该路径。(8)Debug文件夹存放程序调试产生的信息本章目录现在是32页\一共有612页\编辑于星期一2.3窗体和基本控件2.3.1通用属性

属性设置两种方式:通过属性窗口设置在代码设计窗口通过代码来设置

在VB.NET中,属性的类型有:基本数据类型枚举类型结构类型用代码设置时,需要用不同方式表示不同的类型本章目录现在是33页\一共有612页\编辑于星期一2.3.1通用属性(1)Name所有对象都具有的属性,表示所创建的对象名称。在程序中通过对象名称来引用对象,不会显示在窗体上。(2)Text用于在窗体上显示对象的文本TextBox控件的Text还可以获取输入信息本章目录现在是34页\一共有612页\编辑于星期一(3)

控件布局属性控件布局由Location、Size结构来实现,它们各有一对整数来表示,整数单位为像素。Location控件左上角位置,Size控件大小例如,命令按钮控件布局Button1.Location=NewPoint(88,48)Button1.Size=NewSize(80,32)也可用Left、Top定位;用Width和Height来表示控件的宽度和高度。本章目录等效的语句设置:

Button1.Left=88Button1.Top=48Button1.Width=80Button1.Height=32

现在是35页\一共有612页\编辑于星期一(4)Font属性值是Font类的对象,一般通过Font属性对话框设置若在程序代码中需要改变文本的外观,则应通过New创建Font对象来改变字体。例如:Label1.Font=NewSystem.Drawing.Font("Arial",10)本章目录现在是36页\一共有612页\编辑于星期一(5)ForeColor、BackColor颜色属性

ForeColor控件正文前景色

BackColor背景色(6)Cursor指示鼠标光标图像设置值是一个Cursors枚举类型的枚举值。若要用户定义自己的指针图标,可通过如下语句实现:对象名.Cursor=NewSystem.Windows.Forms.Cursor("图标文件名")

本章目录现在是37页\一共有612页\编辑于星期一(7)Dock控件放置靠窗体边框的位置,属性值是DockStyle枚举类型,有六个枚举值(8)Enabled、Visible控件的有效、可见性本章目录(9)TabIndex按Tab键时,焦点在各个控件移动的顺序EnabledVisibleTrue允许用户操作程序运行时控件可见False禁止用户操作运行时控件不可见现在是38页\一共有612页\编辑于星期一2.3.2窗体窗体是一块画布,是所有控件的容器,可以根据需要利用工具箱上的控件在窗体上画界面。1.主要属性本章目录现在是39页\一共有612页\编辑于星期一窗体-属性(1)MaxButton、MinButton设置为True,窗体上有最大(小)化按钮;为False时无最大(小)化按钮(2)Icon、ControlBox窗体图标、控制菜单ControlBox属性为True,窗体上有控制菜单框;为False时无控制菜单(系统将MaxButton和MinButton自动设置为False)(3)BackgroundImage窗体背景图案(4)FormBorderStyle窗体的边框类型本章目录现在是40页\一共有612页\编辑于星期一窗体-事件最常用的事件有Click、DblClick和LoadLoad事件窗体装入内存时触发(应用程序启动时自动执行该事件),常用来在启动时对属性和变量初始化。例2.3

编写三个事件过程,要求如下:启动窗体,在标题栏显示“装入窗体”,并将tongji.bmp作为背景图平铺窗体、窗体边框为Fixed3D;单击窗体,标题栏显示对应的文字、装入tongji-2.bmp图片大小为264×256,要求图片正好充满窗体。双击窗体,标题栏显示对应的文字、窗体无最大化和最小化按钮,清除装入的图片。代码说明本章目录现在是41页\一共有612页\编辑于星期一窗体-方法使用方法的语法形式:

[对象.]方法[参数列表]窗体方法主要有ShowDialog

、Show、Hide等,主要用于多窗体的显示和隐藏等例如:Me.Hide本章目录现在是42页\一共有612页\编辑于星期一2.3.3标签-属性标签用来显示文本信息(不能输入)除Name、Font、Size、Location、Enable等属性外,其它主要属性:(1)Text、TextAlign:设置显示的文本、文本的对齐方式TextAlign属性是枚举类型,提供标签控件上文本的9种对齐方式本章目录现在是43页\一共有612页\编辑于星期一(2)BackColor背景色(默认与窗体背景相同)。若要以透明方式显示,需要设置Color枚举类型的Transparent。(3)BorderStyle

标签控件边框样式

None控件周围没有边框(默认值)FixedSingle控件带有单边框

Fixed3D控件带有立体边框(4)AutoSize

控件是否能自动调整大小当值为False,保持控件原设计时的大小,正文若太长则显示其中的一部分。本章目录现在是44页\一共有612页\编辑于星期一(5)Image、ImageAlign

设置控件的背景图案和图案对齐方式ImageAlign属性与TextAlign类似通过代码设置图案:标签名.Image=Image.FromFile("图片名")例2.4在4个标签中存放4个方向的“手指”图片,当单击某方向时,利用“Dock”属性定位第5个标签、并显示相关信息。

代码说明本章目录现在是45页\一共有612页\编辑于星期一2.3.4文本框文本框是一个文本编辑区域,可以在该区域输入、编辑、修改和显示正文内容。(1)Text

显示或输入的正文内容(2)Maxlength

设置文本框可输入的文字最大长度。默认值为0,表示可以输入任意长字符串。注意:在VB.NET中字符长度以字为单位,也就是一个西文字符与一个汉字都是一个字,长度为1。

本章目录现在是46页\一共有612页\编辑于星期一(3)MultiLine

多行属性设置为True时,文本框可以输入或显示多行正文,同时具有文字处理器的自动换行功能,按Enter键可插入一空行。(4)ScrollBars

滚动条属性

None无滚动条

Horizontal水平滚动条

Vertical垂直滚动条

Both同时加水平和垂直滚动条当MultiLine为True时,ScrollBars才有效本章目录现在是47页\一共有612页\编辑于星期一(5)PassWordChar

设置显示文本的替代符。例如,当设置为“*”,则在文本框输入的内容均以“*”显示,而存储的值是用户输入的原文。一般用于设置口令的输入。当MultiLine为True时,该属性不起作用,密码不允许多行。(6)ReadOnly指定文本控件是否可被编辑,默认值为False(可编辑),当设置为True时,文本控件相当于标签控件的作用。

本章目录现在是48页\一共有612页\编辑于星期一(7)文本内容进行选择操作SelectionStart选定的正文开始位置SelectionLength选定的正文长度SelectedText选定的正文内容设置SelectionStart和SelectionLength属性后,SelectedText会自动存放设定的正文例2.5

利用属性实现对文本信息的剪切、拷贝、粘贴等功能。

本章目录代码说明现在是49页\一共有612页\编辑于星期一文本框-事件(1)TextChanged事件当Text属性值发生改变时引发该事件例在文本框每输入一个字符就引发一次事件(2)KeyPress事件按下并且释放键盘上的一个键时,引发焦点所在控件的KeyPress事件,所按键的值存放在参数e.KeyChar中例对回车的判断Asc(e.KeyChar)=13本章目录现在是50页\一共有612页\编辑于星期一(3)LostFocus事件对象失去焦点时发生LostFocus事件该事件主要是用来对数据进行验证和确认,常用于检查Text属性的内容。(4)GotFocus事件GotFocus事件与LostFocus事件相反,当一个对象获得焦点时发生本章目录现在是51页\一共有612页\编辑于星期一文本框-方法文本框最有用的方法是Focus,把光标移到指定的文本框中。其形式如下:

[对象.]FocusFocus还可以用于如CheckBox、Button、ListBox、ComboBox等控件。例2.6对输入的数据进行合法性检验,过滤不合法的数据。本章目录代码说明现在是52页\一共有612页\编辑于星期一2.3.5命令按钮用于程序运行时执行相应的事件1.属性(1)Text命令按钮上显示的文字(2)FlatStyle按钮的外观该属性有4个枚举值:

Flat以平面显示按钮

Popup鼠标在按钮上以Flat形式显示,否则以Standand显示

Standand以三维效果显示(默认)System由操作系统决定外观形式本章目录现在是53页\一共有612页\编辑于星期一命令按钮(3)Image、BackGroundImage当FlatStyle属性值设置为非System的值时,则可以使用Image、BackGroundImage属性为按钮设置图形或背景图,显示不同的图形文件(.bmp和.ico)。通常情况使用Image属性。(4)TextAlign、ImageAlign设置文本、图形在按钮上的对齐方式2.事件

命令按钮一般接收Click事件

本章目录现在是54页\一共有612页\编辑于星期一2.4综合应用例2.7建立一个类似记事本的应用程序,提供:(1)剪切、复制和粘贴的编辑操作(2)字体大小的格式设置分析:(1)建立一个文本框输入文本,文本框应该有滚动条,为了便于调试,程序运行时文本框有初始值。(2)利用文本框的SelectedText属性实现“剪切、复制和粘贴”的编辑操作;(3)“格式”设置利用Font对象实现。代码说明本章目录现在是55页\一共有612页\编辑于星期一本章小节类是同种对象的集合与抽象,包含所创建对象的属性描述和行为特征的定义,是创建对象实例的模板。对象三要素:属性、事件、方法属性的类型:基本数据类型、枚举类型、结构类型窗体是所有控件的容器基本控件标签、文本框、命令按钮本章目录现在是56页\一共有612页\编辑于星期一思考题1.什么是类?什么是对象?什么是事件过程?2.属性和方法的区别是什么?3.如何建立一个完整的应用程序?4.如何在文本框内显示多行文本?5.如何使对象获得焦点?6.如何在命令按钮上设置图形?本章目录现在是57页\一共有612页\编辑于星期一第三章VB.NET语言基础

3.1变量、常量与数据类型3.2运算符和表达式3.3常用函数3.4程序结构和编码规则3.5综合应用本章目录现在是58页\一共有612页\编辑于星期一3.1变量、常量和数据类型3.1.1变量概述

变量在程序运行中其存储的值可以改变命名规则:必须以字母或汉字开头,由字母、汉字、数字或下划线组成,长度小于等于255个字符不能使用VB.NET中的关键字

VB.NET不区分变量名的大小写,一般变量名首字母用大写,其余用小写字母表示;常量全部用大写字母表示本章目录现在是59页\一共有612页\编辑于星期一3.1.1变量概述值类型和引用类型的变量

值类型变量直接存放数据。每个值类型变量有它自己的数据拷贝,因此对一个值类型变量的操作不能影响其他的变量。引用类型变量并不真的包含数据,存放的是指向其他数据的内存地址的指针,也就是把数据值所在的地址作为引用变量的值。该种变量对象的引用简称为赋值或存储。字符串、数组和类是引用类型的变量。本章目录现在是60页\一共有612页\编辑于星期一变量概述x是值类型变量,存放的值为1234;

s是引用类型变量,指向"VB.NET"的一个引用

本章目录现在是61页\一共有612页\编辑于星期一3.1.2数据类型本章目录现在是62页\一共有612页\编辑于星期一3.1.3变量声明1.用Dim语句显式声明变量

Dim

变量名[As类型][=初始值]As部分缺省,创建的变量为Object类型初始值子句,表示给声明的变量赋值一条Dim语句可同时定义多个变量。多个相同类型变量,可用一个As来指定(前面几个由逗号分隔),这时不能给变量赋初值。例如:Dimm,n,jAsInteger,x,yAsSingle,k

k为Object类型

本章目录现在是63页\一共有612页\编辑于星期一变量声明2.隐式声明默认状态下,系统要求对使用的变量都显式声明,当使用没有声明的变量时,该变量名下有绿色曲线(表示语法错)。若对变量不声明而直接使用,称为隐式声明。则需要在模块中所有程序代码的最前面加语句:

OptionExplicitOff

对初学者,最好变量加以显式声明,这样有助于程序的查错。本章目录现在是64页\一共有612页\编辑于星期一3.1.4常量常量是在程序运行中不变的量,VB.NET中有三种常量:直接常量其常数值直接反映了其类型符号常量用户声明,便于程序阅读或修改Const符号常量名[As类型]=表达式系统常量系统提供许多内部常量和枚举例如:vbCrLf回车/换行组合符枚举如控件的颜色、边框线型等本章目录现在是65页\一共有612页\编辑于星期一3.2运算符和表达式和其他语言一样,VB.NET中也具有丰富的运算符,通过运算符和操作数组合成表达式,实现程序编制中所需的大量操作。运算符是表示实现某种运算的符号。VB.NET中的运算符可分算术运算符、字符串运算符、关系运算符和逻辑运算符四类。本章目录现在是66页\一共有612页\编辑于星期一3.2.1算术运算符例:5+10mod10\9/3+2^2结果:10

注意:对算术运算符两边的操作数应是数值型,若是数字字符或逻辑型,则自动转换成数值类型后再运算。例如:30-True结果是31,逻辑量True转为数值-1,False转为数值0False+10+"4"结果是14本章目录现在是67页\一共有612页\编辑于星期一字符串运算符&

两旁的操作数可任意,转换成字符型后再连接+

两旁的操作数应均为字符型;若为数值型则进行算术加运算;若一个为数字字符,另一个为数值,则自动将数字字符转换为数值后进行算术加;若一个为非数字字符型,另一个为数值型,则出错。例如:

操作结果操作结果"ab"&123"ab123" "ab"

+12出错"12"&456"12456" "12"+

456468"12"&True"12True" "12"+

True11注意:在变量后使用运算符&时,变量与&间应加一个空格

本章目录现在是68页\一共有612页\编辑于星期一关系运算符关系运算符是双目运算符,作用是对两个操作数进行大小比较,若关系成立,则返回True,否则返回False。操作数可以是数值型、字符型。本章目录运算符例结果="ABCDE"="ABR"False>"ABCDE">"ABR"False>="bc">="abcde

"True<23<3False<="23"<"3"

True<>"abc"<>"abcde

"True现在是69页\一共有612页\编辑于星期一逻辑运算符逻辑运算符除Not是单目运算符外,其余都是双目运算符,作用是将操作数进行逻辑运算,结果是逻辑值True或False。本章目录现在是70页\一共有612页\编辑于星期一3.2.2表达式1.组成

变量、常量、函数、运算符和圆括号2.书写规则运算符不能相邻例a+-b是错误的乘号不能省略例x乘以y应写成:x*y

括号必须成对出现(均使用圆括号)

表达式从左到右在同一基准上书写,无高低、大小3.不同数据类型的转换运算结果的数据类型向精度高的数据类型靠

Integer<Long<Single<Double<Currency4.优先级算术运算符>=字符运算符>关系运算符>逻辑运算本章目录现在是71页\一共有612页\编辑于星期一表达式书写举例a*b*c*d/e/f/g或

a*b*c*d/(e*f*g)选拔优秀生的条件为:年龄(Age)小于19岁,三门课总分(Total)高于285分,其中有一门为100分,如果其表达式写为:Age<19AndTotal>285And(Mark1=100OrMark2=100OrMark3=100)如果取消括号有何问题?请读者考虑。

sin(45*3.14/180)+(exp(10)+log(10))/sqr(x+y+1)本章目录现在是72页\一共有612页\编辑于星期一3.3常用函数3.3.1名称空间和类VB.NET通过名称空间把类库划分为不同的组,将功能相近的类划到相同的名称空间。有了名称空间,可以方便地组织应用程序要使用的各个类。(1)VB.NET函数库的名称空间和模块Conversion转换函数DateAndTime日期和时间函数Strings字符串函数VbMath随机函数本章目录现在是73页\一共有612页\编辑于星期一3.3.1名称空间和类(2)基础类库中的名称空间和类类别名称空间说明

基本数据类型System基本的和经常使用的数据类型、事件和事件处理程序、接口、属性和异常处理等编程基础System.CollectionsSystem.IO对象集合文件管理及其输入/输出图形System.DrawingSystem.Windows.FormsGDI+Windows的应用程序的丰富用户数据库System.DataADO.NET的各种对象本章目录现在是74页\一共有612页\编辑于星期一名称空间的使用引用名称空间的方法:

项目引用新建一个项目时,VB.NET根据所建项目类型,自动导入部分名称空间的引用直接引用给出名称空间的全名,就可访问其中的任一个类及其各项内容

例使用Math类开方函数sqrt:

Label1.Text=system.Math.sqrt(100)

Imports语句导入在代码中就可直接使用名称空间的类或成员。导入语句的格式:

Imports

名称空间

本章目录现在是75页\一共有612页\编辑于星期一3.3.2数学函数.NET中的数学函数包含在Math类。使用前在模块的开头用语句ImportsSystem.Math导入-43Int(-3.5)Int(3.5)取小于或等于N的最大整数Int(N)2.3Log(10)自然对数Log(N)-33Fix(-3.5)Fix(3.9)取整Fix(N)20.086Exp(3)exExp(N)1Cos(0)余弦函数Cos(N)3.5Abs(-3.5)取绝对值Abs(N)结果实例含义函数名本章目录现在是76页\一共有612页\编辑于星期一数学函数0Tan(0)正切函数Tan(N)3Sqr(9)平方根Sqr(N)-1Sgn(-3.5)符号函数Sgn(N)0Sin(0)正弦函数Sin(N)-44Round(-3.5)Round(3.5)四舍五入取整Round(N)[0,1)之间的数Rnd产生随机数Rnd[(N)]结果实例含义函数名Rnd函数返回0和1(包括0但不包括1)之间的双精度随机数.每次运行时,要产生不同序列的随机数,先执行Randomize语句。产生a~b的之间的随机整数:Int(Rnd*(b-a)+a)本章目录现在是77页\一共有612页\编辑于星期一3.3.3转换函数"ABC"Ucase$("abc")小写字母转为大写字母Ucase(C)"144"Oct$(100)十进制转换成八进制Oct](N)"123.45"Str$(123.45)数值转换为字符串Str(N)123Val("123AB")数字字符串转换为数值Val(C)"abc"Lcase$("ABC")大写字母转为小写字母Lcase$(C)64Hex(100)十进制转换成十六进制Hex(N)"A"Chr$(65)ASCII码值转换成字符Chr(N)2003-11-13CDate("2003/11/13")转换成日期型CDate65Asc("A")字符转换成ASCII码值Asc(C)结果实例功能

函数名本章目录现在是78页\一共有612页\编辑于星期一转换函数说明(1)Chr和Asc函数互为反函数。(2)Str函数将非负数值转换成字符类型后,会在转换后的字符串左边增加一空格。(3)Val将数字字符串转换为数值类型,当字符串中出现数值类型规定的字符外的字符,则停止转换,函数返回的是停止转换前的结果。例如表达式:Val("-123.45ty3")结果为-123.45。(4)CDdate函数将以日期型表达式转换成日期类型。例如表达式:CDate("2005/5/12")结果为日期类型VB.NET中还有其他类型转换函数,例如,CInt、CBool、CSng、CStr等,详细例子查阅帮助功能。本章目录现在是79页\一共有612页\编辑于星期一3.3.4字符串函数字符串编码VB.NET中字符串长度是以字(习惯称字符)为单位,每个西文字符和每个汉字都作为一个字,占两个字节。这是因为VB.NET采用Unicode(国际标准化组织ISO字符标准)来存储和操作字符串。VB.NET中字符串处理有两种方式:保留和更新了VB6.0版本提供的函数;另一种是用System.String类的成员(函数)

本章目录现在是80页\一共有612页\编辑于星期一字符串函数"BCD"Mid("ABCDE",2,3)取字符子串Mid(C,N1[,N2])"ABCD"Trim("ABCD")去掉字符串两边空格Trim(C)"A3AB3"Replace("ACDABCD","CD","3")用C2替代C1Replace(C,C1,C2)""Space(3)产生N个空格的字符串

Space(N)4Len("AB教育")字符串长度Len(C)"ABC"Left("ABCDE",3)取字符串左边n个字符Left(C,N)7InStr(2,"EFABCDEFG","EF")从n开始,在C1中找C2InStr([N,]C1,C2[,M])结果实例说明

函数名本章目录现在是81页\一共有612页\编辑于星期一字符串函数"ABCD"TRim(“ABCD")去掉字符串两边的空格TRim(C)"DCBA"StrReverse("ABCD")将字符串反序StrReverse(C)"AAA"String(3,"ABC")重复首字符n次String(N,C)S(0)="123"S(1)=“ab"S=Split("123,ab",",")将字符串分隔成字符数组。与Join作用相反Split(C[,D])“"Space(3)产生n个空格的字符串Space(N)"ABCD"RTrim("ABCD")去掉字符串右边空格RTrim(C)“BCD"Right("ABCD",3)取字符串右边n个字符Right(C,N)结果实例说明

函数名本章目录现在是82页\一共有612页\编辑于星期一3.3.5日期函数Second(#1:12:56PM#)返回秒(0~59)Second(C|N)Time返回系统时间Time[()]Year(365)返回年代号(1753~2078)Year(C|N)Now返回系统日期和时间NowMonth("2003,05,01")返回月份代号(1~12)Month(C|N)Minute(#1:12:56PM#)返回分钟(0~59)Minute(C|N)Hour(#1:12:56PM#)返回小时(0~24)Hour(C|N)Day("2003,05,01")返回日期代号(1~31)Day(C|N)Date返回系统日期Date[()]实例说明

函数名例计算从当前日期到2007年6月30日有多少天?表达式为:DateDiff("d",Now,#6/30/2007#)本章目录现在是83页\一共有612页\编辑于星期一3.3.6Shell函数Shell函数可调用各种应用程序。格式如下:

Shell(命令字符串[,窗口类型])命令字符串为要执行的应用程序名(包括路径),必须是可执行文件(.com、.exe、.bat)。窗口类型表示执行应用程序的窗口状态,0~4,6的整型数值,1表示正常窗口状态。函数调用成功返回一个任务标识ID,不成功,则返回0。提示:如果不知道应用程序的路径名,可用Start命令启动程序例

i=Shell(start

&"calc.exe")本章目录现在是84页\一共有612页\编辑于星期一3.4程序结构和编码规则本章目录现在是85页\一共有612页\编辑于星期一程序结构和编码规则编码规则(1)VB.NET代码不区分字母的大小写关键字,首字母自动转换成大写,其余字母转换成小写。对于用户自定义的变量、过程名,以第一次定义的为准,以后输入的自动向首次定义的形式转换。(2)语句书写自由一行上可书写多句语句(用冒号分隔),一行最多255个字符。单行语句可分若干行书写,在本行后加入续行符(空格和下划线)。本章目录现在是86页\一共有612页\编辑于星期一3.5综合应用例3.3

模仿字处理软件中字符串替换功能和字幕滚动。设计思路:利用Shell函数调用winword.exe执行Word程序观察其替换对话框。本例字符串替换功能实现方法:利用查找(InStr)、取子串(Left、Mid)等函数实现利用替换(Replace)函数实现标题显示:Form1.Caption=Space(n)&"显示文字"要产生滚动效果,可用时钟(Timer1)控件和Space函数,改变空格数达到自右向左滚动字幕效果。本章目录现在是87页\一共有612页\编辑于星期一本章小节变量:在程序运行中其存储的值可以改变

值类型变量、引用类型变量变量声明Dim变量名

[As类型][=初始值]运算符算术运算符、字符串运算符、关系运算符和逻辑运算符名称空间导入

Imports

名称空间

数学函数使用ImportsSystem.MathShell函数调用各种应用程序本章目录现在是88页\一共有612页\编辑于星期一思考题VB.NET提供了哪些数值类型?声明类型时,其类型关键字分别是什么?其类型符又是什么?2.说明OptionExplici的作用。3.什么是值类型变量?什么是引用类型变量?4.怎样声明一个符号常量?符号常量与变量的区别?5.解释整除与除法运算的区别?6.将数字字符串转换成数值,可以用哪些函数、方法?本章目录现在是89页\一共有612页\编辑于星期一第四章基本的控制结构4.1顺序结构4.2选择结构4.3循环结构4.4其它辅助控制语句4.5综合应用4.6程序调试本章目录现在是90页\一共有612页\编辑于星期一4.1顺序结构VB.NET也具有结构化程序设计的三种结构,即顺序结构、选择结构、循环结构,它是程序设计的基础。顺序结构就是各语句按出现的先后次序执行。一般的程序设计语言中,顺序结构的语句主要是赋值语句、输入/输出语句等。在VB.NET中也有赋值语句;而输入/输出可以通过文本框控件、标签控件、InputBox函数、MsgBox函数和过程等来实现。本章目录现在是91页\一共有612页\编辑于星期一4.1.1赋值语句形式:变量名=表达式计算右边表达式的值,然后赋给左边的变量。给变量赋值和设定属性是VB.NET编程中常见的两个任务。例如:sngRate!=0.1'sngRate为单精度变量,赋值0.1TextBox1.Text=""'清除文本框的内容TextBox1.Text="欢迎使用VB.Net"'文本框显示字符串

本章目录现在是92页\一共有612页\编辑于星期一复合赋值语句复合赋值运算符,其作用简化程序代码,提高程序编编译的效果。语句形式:

变量名复合赋值运算符表达式计算右边表达式的值,然后与左边的变量进行相应的运算,最后赋值给变量。复合赋值运算符:+=、-=、*=、\=、/=、^=、&=例如:a*=b+4等价于

a=a*(b+4)本章目录现在是93页\一共有612页\编辑于星期一常用复合赋值语句累加sum+=x等价于sum=sum+x计数n+=1等价于n=n+1显示多行信息利用&=

来实现例如:TextBox1.Text="

VB.NET"&vbCrLfTextBox1.Text&=

"程序设计教程"本章目录现在是94页\一共有612页\编辑于星期一赋值语句注意点

赋值语句不允许写成表达式=变量,虽然赋值号与关系运算符等于号都用=表示,VB.NET系统会根据所处的位置自动判断符号的意义。

赋值号左边的变量只能是变量,不能是常量、常数符号、表达式。下面均为错误的赋值语句:Now()=x+y'左边是表达式(函数)5=sqrt(s)+x+y'左边是常量本章目录现在是95页\一共有612页\编辑于星期一InputBox函数打开一个对话框,等待用户输入,返回字符串类型的输入值。形式:InputBox(提示[,标题][,默认值][,x坐标位置][,y坐标位置])提示项不能省略。若要多行提示,可在每行行末加回车换行VBCrLf。例4.1利用InputBox输入基本工资和营业额,按营业额的5%提成,计算实发工资并显示。

4.1.2数据输出和输入本章目录代码说明现在是96页\一共有612页\编辑于星期一打开一个信息框,等待用户选择一个按按钮。MsgBox函数返回所选按钮的值,MsgBox过程不返回值MsgBox函数形式:

变量[%]=MsgBox(提示[,按钮][,标题])MsgBox过程形式:

MsgBox

提示[,按钮][,标题]按钮项是一整型表达式,决定信息框按钮的数目和类型及出现在信息框上的图标形式。MsgBox函数和MsgBox过程本章目录现在是97页\一共有612页\编辑于星期一MsgBox按钮设置第3个按钮为默认512VB.NETDefaultButton3第2个按钮为默认56VB.NETDefaultButton2第1个按钮为默认0VB.NETDefaultButton1默认按钮

信息图标64VB.NETInformation警告信息图标48VB.NETExclamation询问信息图标32VB.NETQuestion关键信息图标16VB.NETCritical图标类型

重试、取消按钮5VB.NETRetryCancel是、否按钮4VB.NETYesNo是、否、取消按钮3VB.NETYesNoCancel终止、重试、忽略按钮2VB.NETAboutRetryIgnore确定、取消按钮1VB.NETOkCancel确定按钮0VB.NETOkOnly按钮数目描述值内部常数分组本章目录现在是98页\一共有612页\编辑于星期一MsgBox所选按钮返回值例4.2编一账号和密码输入的检验程序,当输入不正确,如账号为非数字字符,密码不正确等,显示有关信息,再输入。VBNo7否VBYes6是VBIgnore5忽略VBRetry4重试VBAbort3终止VBCancel2取消VBOk1确定内部常数返回值被单击的按钮NoYesIgnoreRetryAbortCancelOk枚举值

本章目录代码说明现在是99页\一共有612页\编辑于星期一Write、WriteLine方法在调试窗口输出信息。Write输出时不换行、WriteLine输出时换行。输出方法:

Debug.WriteLine(表达式)

Debug.Write(表达式)例将例4.1输出改为如下语句:Debug.WriteLine("本月营业额为:"&x&"基本工资为:"&jbgz)Debug.Write("本月实发工资为:"&sfgz)选择“视图|其它窗口|输出”显示输出窗口本章目录现在是100页\一共有612页\编辑于星期一日期输出控制常用日期和时间格式符

显示小时(0~23),hh个位前加0h在h后显示分(0~59),mm个位前加0m显示秒(0~59),ss个位前加0s显示完整长日期(yyyy年m月d日)dddddd显示4位数年份,yy为2位数年份yyyy显示月份,mm个位前加0m星期为数字(1是星期日)w显示日期,dd个位前加0d作用符号本章目录现在是101页\一共有612页\编辑于星期一4.2选择结构计算机要处理的问题往往是复杂多变的,仅采用顺序结构是不够的。必须利用选择结构等来解决实际应用中的各种问题。VB.NET中提供了多种形式的条件语句来实现选择结构,有If条件语句和Select情况语句等。它们都是对条件进行判断,根据判断结果,选择执行不同的分支。本章目录现在是102页\一共有612页\编辑于星期一4.2.1If条件语句1.If…Then语句(单分支结构)

If<表达式>Then

语句块(可以是一句或多句语句)

EndIf或

If<表达式>Then<语句>表达式:关系表达式、逻辑表达式,算术表达式。表达式值按非零为True,零为False进行判断。该语句的作用是当表达式的值为True,执行Then后面的语句块,否则不做任何操作。本章目录IF演示现在是103页\一共有612页\编辑于星期一单分支结构例:已知两个数x和y,比较它们的大小,使得x大于y。

Ifx<yThent=xx=yy=tEndIf或Ifx<yThent=x:x=y:y=t

简单If形式无EndIf时,只能是一句语句或语句间用冒号分隔,而且必须在一行上书写。

本章目录现在是104页\一共有612页\编辑于星期一双分支结构2.If…Then…Else语句If表达式

Then

语句块1Else

语句块2EndIf或If表达式

Then

语句1

Else

语句2当表达式的值为True时,执行Then后面的语句块1,否则执行Else后面的语句块2本章目录现在是105页\一共有612页\编辑于星期一双分支结构例计算分段函数

单分支

y=cos(x)-x^3+3*x结构实现Ifx<>0Theny=sin(x)+sqr(x*x+1)

Ifx<>0Then

双分支

y=sin(x)+sqr(x*x+1)Else结构实现

y=cos(x)-x^3+3*xEndIf本章目录现在是106页\一共有612页\编辑于星期一多分支结构3.If…Then…ElseIf语句

If表达式1Then

语句块1

ElseIf表达式2Then

语句块2 …

[Else

语句块n+1]

EndIf作用:根据不同的表达式值确定执行哪个语句块

本章目录现在是107页\一共有612页\编辑于星期一例4.5已知变量ch中存放了一个字符,判断该字符是字母字符、数字字符还是其他字符。

IfUCase(ch)>="A"AndUCase(ch)<="Z"ThenMsgBox(ch+“是字母字符”)'考虑大小写字母

ElseIfch>="0"Andch<="9"Then'数字字符

MsgBox(ch+"是数字字符")

Else'除上述字符以外的字符

MsgBox(ch+"是其他字符")

End

If不管有几个分支,依次判断,当某条件满足,执行相应的语句,其余分支不再执行;若条件都不满足,且有Else子句,则执行该语句块,否则什么也不执行。

ElseIf不能写成

ElseIf多分支结构例本章目录现在是108页\一共有612页\编辑于星期一If语句的嵌套是指If或Else后面的语句块中又包含If语If表达式1Then

If表达式2Then…EndIf

…EndIfIfx<yThent=x:x=y:y=tIfy<zThent=y:y=z:z=tIfx<yThent=x:x=y:y=tEndIfEndIfIf语句的嵌套例已知x,y,z三个数,使得x>y>z用一个IF语句和一个嵌套的IF语句实现本章目录现在是109页\一共有612页\编辑于星期一4.2.2SelectCase语句SelectCase

变量或表达式

Case表达式列表1

语句块1Case表达式列表2

语句块2 …[CaseElse

语句块n+1]EndSelect表达式列表与变量或表达式的类型必须相同,是下面4种形式之一:表达式例:"A"一组用逗号分隔的枚举值

2,4,6,8

表达式1To表达式260To100Is关系运算符表达式Is<60本章目录现在是110页\一共有612页\编辑于星期一SelectCase语句例将例4.5改用SelectCase语句实现:

SelectCasech Case"a"To"z","A"To"Z" MsgBox(ch+"是字母字符") Case"0"To"9" MsgBox(ch+"是数字字符") CaseElse MsgBox(ch+"是其他字符")EndSelect多分支结构,用SelectCase语句比If…Then…ElseIf语句直观,程序可读性强。但不是所有的多分支结构均可用SelectCase语句代替If…Then…ElseIf语句。本章目录现在是111页\一共有612页\编辑于星期一SelectCase语句例例4.7已知坐标点(x,y),判断其落在哪个象限。代码一

Ifx>0Andy>0ThenMsgBox("在第一象限")ElseIfx<0Andy>0ThenMsgBox("在第二象限") ElseIfx<0Andy<0ThenMsgBox("在第三象限") ElseIfx>0Andy<0ThenMsgBox("在第四象限") EndIf

代码二SelectCasex,yCasex>0Andy>0MsgBox(“在第一象限”)Casex<0Andy>0MsgBox(“在第二象限”)Casex<0Andy<0MsgBox(“在第三象限”)Casex>0Andy<0MsgBox(“在第四象限”)EndSelect代码二错误:1.SelectCase后不能出现多个变量;2.Case后不能出现变量及有关运算符。本章目录现在是112页\一共有612页\编辑于星期一4.2.3条件函数(1)IIf函数IIf(表达式,表达式为真时的值,表达式为假时的值)IIf函数是If…Then…Else结构的简洁表示例如,将x,y中大的数,放入Tmax变量中:Tmax=IIf(x>y,x,y)该语句与如下语句等价:Ifx>yThenTmax=xElseTmax=y

本章目录现在是113页\一共有612页\编辑于星期一4.2.3条件函数(2)Choose函数

Choose(整数表达式,选项列表)根据表达式的值i,返回选项列表中第i个选项。如果整数表达式的值越出选项范围时,返回Null。例根据Nop的值,得到+、-、×、÷中的某运算符:Op=Choose(Nop,"+","-","×","÷")

例4.8根据当前日期,显示今日是星期几。t=Choose(Weekday(Now),“星期日”,“星期一”,“星期二”,“星期三”,“星期四”,“星期五”,“星期六”)MsgBox("今天是:"&Now&t)

本章目录现在是114页\一共有612页\编辑于星期一4.3循环结构计算机最擅长的功能之一就是按规定的条件,重复执行某些操作。例如,按照人口某增长率,对人口增长统计;根据各课程的学分、绩点和学生的成绩,统计每个学生的平均绩点等。这类问题都可通过循环结构来方便地实现。VB.NET中提供了两种类型的循环语句:一种是计数循环语句;另一种是条件型循环语句。

本章目录现在是115页\一共有612页\编辑于星期一4.3.1For循环语句For循环语句用于控制循环次数预知的循环结构。For循环变量=初值To终值

[Step步长]

语句块

[ExitFor]

语句块Next循环变量循环变量必须为数值型。循环次数>0初值<终值=1时,可省略<0初值>终值=0死循环步长例4.9

计算1~100的奇数和

本章目录现在是116页\一共有612页\编辑于星期一For循环语句循环流程:(1)循环变量被赋初值,它仅被赋值一次。(2)判断循环变量是否在终值内,如果是,执行循环体;如果否,结束循环,执行Next的下一语句。(3)循环变量加步长,转(2),继续循环

例4.10将可打印的ASCII码制成表格输出本章目录现在是117页\一共有612页\编辑于星期一4.3.2Do…Loop循环语句Do循环用于控制循环次数未知的循环结构。形式1:Do{While|Until}<条件>

语句块

[ExitDo

语句块]Loop形式1为先判断后执行,有可能一次也不执行;形式2为先执行后判断,至少执行一次。形式2:Do

语句块

[ExitDo

语句块]Loop{While|Until}<条件>本章目录现在是118页\一共有612页\编辑于星期一Do…Loop流程本章目录现在是119页\一共有612页\编辑于星期一循环例题例4.11我国有13亿人口,按人口年增长0.8%计算,多少年后我国人口超过26亿。解此问题两种方法,可根据公式:直接利用标准函数对数可求得,但求得的年数不为整数;也可利用循环求得。本章目录代码说明现在是120页\一共有612页\编辑于星期一循环例题例4.12用辗转相除

温馨提示

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

评论

0/150

提交评论