版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第2章VB编程入门VisualBasic程序设计教程本章将介绍有关VB程序的构成和数据类型以及变量的定义和使用、表达式以及基本的输入输出操作。这些知识是编程的基础。我们将通过简单示例的分析,帮助理解如何进行VB编程。2VisualBasic程序设计教程本章主要内容:确定数据的性质:数据类型两种数据表达:常量和变量算术运算符和表达式VB编程的开始:使用窗体赋值和输入输出3VisualBasic程序设计教程1.加法器界面设计2.2一个简单的加法器程序5VisualBasic程序设计教程2.编写程序代码对象列表框过程列表框过程分界线程序员在此编写代码光标标题6VisualBasic程序设计教程PrivateSubCmdAdd_Click() ‘计算”按钮代码DimTempAsLongTxtNum1.Text=""TxtNum2.Text=""TxtSum.Text=""TxtNum1.Text=InputBox("请输入第一个数")TxtNum2.Text=InputBox("请输入第二个数")Temp=Val(TxtNum1)+Val(TxtNum2)TxtSum.Text=TempEndSubPrivateSubCmdExit_Click() “退出”按钮代码FrmAdder1.HideMsgBox("加法器程序运行结束,谢谢使用")EndEndSub7VisualBasic程序设计教程整数:整型/长整型字节型浮点型:单/双精度货币型数值型数据类型字符型逻辑型日期型对象型变体型9VisualBasic程序设计教程
使用数值类型1.字节型(Byte)
字节型数可以表示无符号的整数,0~255
2.整型(Integer)和长整型(Long)
不带小数部分的数,表示正整数、负整数和零
整型数:-32768~3276798、98%
长整型数:
-2147483648~214748364745678、45678&
10VisualBasic程序设计教程
3.单精度型(Single)和双精度型(Double)
浮点数。表示带有小数部分的数
表示数的范围大,但有误差。
如超出某个表示范围,则用科学记数法
例如:4.53E8(4.53×108),8.173E-14,3.14D23
Single保留7位十进制有效位,Double保留15位4.货币型(Currency)
专门为处理货币而设计的数据类型
它可最多保留小数点右边4位和小数点左边15位11VisualBasic程序设计教程逻辑型与日期型逻辑型(Boolean)
逻辑型又称布尔型,其数据只有True(真)和False(假)两个值逻辑值和数值类型进行转换的时候,它们是非对称的:
(1)数值数据转换为布尔值时,0对应False,非0对应为True
(2)布尔值转换为数值数据时,False对应0,True对应为-1。13VisualBasic程序设计教程日期型(Date)
表示日期和时间
用两个“#”符号把日期和时间的值括起来
如:#08/20/2001#、#2001-08-20#
#12/12/200511:35:35PM#14VisualBasic程序设计教程变体型和对象引用型变体型(Variant)
变体型数据是一种可变的数据类型,可以存放任何类型的数据
当指定变量为Variant变量时,VB会自动完成必要的转换
15VisualBasic程序设计教程自定义数据类型
VB为用户了提供自定义数据类型,以满足用户的需求。实际上自定义数据只是把VB已有的数据类型重新组合或者构造为一个新类型。例如我们要给员工设计一个工资数据类型,这个类型中有姓名、工号和工资数,可以使用以下方法定义:
TypePay
姓名AsString*8
工号
As Long
工资As Single
EndType17VisualBasic程序设计教程类型名称字节数取值范围和有效位数整型Integer2精确表示-32768~32767范围内的整数长整型Long4精确表示-2147483648~2147483647范围内的整数单精度浮点型Single4-3.402823×1038~-1.401298×10-451.401298×10-45~3.402823×10386位有效位数双精度浮点型Double8-1.79769313486232×10308~-4.947×10-3244.947×10-324~1.79769313486232×1030815位有效位数字节型Byte10~255变长字符串String每个字符占1个字节,每个字符串最多可存放约20亿个字符定长字符串String*sizesize是小于65535的无符号整常数,为字符串长度逻辑型Boolean2True或FalseVisualBasic6.0的常用数据类型2.3确定数据的性质:数据类型18VisualBasic程序设计教程类型名称字节数取值范围和有效位数货币型Currency8-922337203685477.5808~922337203685477.5807日期型Date8100.1.1~9999.12.31对象型Object4任何对象的引用变体型Variant若存放数值类型数据,占16个字节,最大可达Double的范围;若存放字符串类型数据,字符串长度与变长字符串相同VisualBasic6.0的其他数据类型19VisualBasic程序设计教程2.4常量与变量2.4.1常量
在程序运行期间其值始终保持不变的量
两种形式的常量:文字常量和符号常量
文字常量又分为数值常量、字符串、逻辑值和日期等
1.数值常量
例如2,35.567,它们直接出现在程序中。
21VisualBasic程序设计教程
2.字符串常量
它是用双引号括起来的各种有效字符串组成的,如“123“,“AbcD“,“程序设计“等。字符串可以为空。
字符串常量的长度为两个引号之间所有的字符数,包括空格。VB规定定长字符串最大长度为32767。
22VisualBasic程序设计教程3.逻辑常量
就是逻辑值,True和False。
4.日期常量
表示日期和时间的常量,例如:#12-12-2005# 23VisualBasic程序设计教程2.4.3变量和声明变量
1.变量是什么
变量是在程序运行期间其值可以发生变化的量。
在程序运行时,数据是存放在内存中的。因此变量就是指示程序将到哪个内存单元去存取数据,即变量与内存单元有关。使用变量名标识不同的变量,同时要给出变量数据的类型。因此,VB变量由数据类型和变量名组成。
程序中选择使用常量还是变量,是根据它们是否需要变化而决定的。25VisualBasic程序设计教程2.VB变量的特点
(1)可变性。向变量存数据,会改变变量原来的值。
(2)从变量中取数据,变量中原来的值不会改变,因此在程序中,一个变量的值可以被反复取用而不会导致数据的改变,“取之不尽”。这是变量的可复制性。
(3)变量的取值和它的类型有关,但VB能够进行自动转换。26VisualBasic程序设计教程4.变量的声明变量的声明就是向程序说明要使用的变量。有以下2种方法(显式声明与隐式声明)(1)声明变量(显式声明)
用Dim、Public、Private或Static语句来声明变量例如:DimsumAsInteger′把sum定义为整型变量
29VisualBasic程序设计教程(2)隐式声明
不加说明就直接使用变量,此时默认的变量类型为变体类型(Variant)也允许使用类型符来声明变量的类型,如Num%,Sum!(3)定义多个变量30VisualBasic程序设计教程2.4.4强制要求必须声明变量:OptionExplicit
OptionExplicit一般情况下,该语句放置在程序模块的外部开始部分,强制要求所有变量必须显式声明后才能使用。
OptionExplicitPrivateSubCmdAdd_Click()……EndSub31VisualBasic程序设计教程2.4.5VB的关键字VB有许多关键字,也叫做保留字,它们为VB系统本身所用,具有特定的含义。这些已经被VB使用了的单词或者缩写就是“关键字”。关键字不能被使用作为用户定义的变量名,也不能被编程者重新定义使用。如我们已知的:As,Dim,Private,Sub,End,Integer,Long,String,OptionExplicit,Date,Const,……等等。32VisualBasic程序设计教程VB有五类表达式:算术表达式、字符串表达式、日期表达式、关系表达式和逻辑表达式运算符说明运算符说明+加法\整数除法-减法^幂*乘法Mod求模/浮点数除法-取负2.5算术运算符和表达式算术运算符
33VisualBasic程序设计教程1.除法计算机使用“/”和“\”代表数学中的除号。“/”用于浮点数除,它将产生一个有小数部分的商。而“\”则是整数除法,它在进行除之前先将运算数四舍五入,结果为丢掉小数部分取其整数部分。注意下面的几个例子: 3/2 结果为1.5 3\2 结果为1 3.5\2 结果为234VisualBasic程序设计教程2.取模运算Mod取模运算是取整除后余数的整数部分。VB支持整数和带小数的数的取模运算。如果是带小数的,则在运算前进行四舍五入操作。注意下面的例子:
13Mod3结果为1,即余数为1 3.5Mod2结果为0。先将3.5四舍五入为4,除2的余数为0 7Mod2.6结果为1 5Mod0.49 除数为0错误(如果你把0.49改为0.5和0.51,试试看会发生什么?)35VisualBasic程序设计教程2.5.2
算术表达式算术表达式也称数值表达式,是用算术运算符把数值型常量、变量、函数连接起来的式子。表达式的运算结果是一个数值例如:(A1+B1/3-X\0.5)*Sin(X) 36VisualBasic程序设计教程2.5.3算术运算符的优先规则运算符优先级
^(乘方)→-(求负)→*/→\→Mod→+-
同级左到右37VisualBasic程序设计教程说明:(1)/和\的区别:1/2=0.5,1\2=0
(2)Mod用来求整型数除法的余数。例如:9Mod7结果为2
(3)在表达式中乘号不能省略,如a*b不能写成ab(或a·b)
(4)括号不分大、中、小,一律采用圆括号。可以嵌套使用
例如,x[x(x+1)+1]→x*(x*(x+1)+1)38VisualBasic程序设计教程窗体是我们进入VB编程所遇到的第一个对象,它是进行程序界面设计的基础平台。在程序运行时它就是程序的实际窗口。使用窗体的“属性”定义窗体的外观使用窗体的“方法”定义窗体的行为使用窗体的“事件”定义与用户之间的交互因此了解窗体(包括后续的控件等对象),就是围绕它的属性、方法和事件展开。这也是学习VB对象编程的主要思路。2.6VB编程的开始:使用窗体39VisualBasic程序设计教程‘程序入口:开始装载窗体‘设置窗体显示功能‘设置窗体的背景色为绿色‘设置窗体的前景色为红色‘设置窗体上对象的字体为黑‘使用字号为15磅‘换行‘显示WelcomeToTheVisualBasic‘显示ThisisaDemoProgram‘结束装载过程PrivateSubForm_Load() ShowForm1.BackColor=vbGreenForm1.ForeColor=vbRedForm1.FontName="黑体"Form1.FontSize=15PrintPrint"WelcomeToTheVisualBasic"Print"ThisisaDemoProgram"EndSub2.6.1一个使用窗体显示文本的例子40VisualBasic程序设计教程窗体的绝大多数属性可以在属性窗口中设置,也可以在程序代码中设置,在程序中输入窗体对象名称和“.”分割后会自动跳出窗体的属性和方法,在这里可以区分属性和方法。2.6.2窗体的属性41VisualBasic程序设计教程窗体的常用属性
自动重画窗体。如需要直接在窗体上显示文本,选择TrueAutoRedraw3设置窗体显示3D效果,默认值为1为3DAppearace2窗体名称(中文版使用(名称))。可在程序中使用,但不能设置Name1功能描述属性名编号42VisualBasic程序设计教程决定窗体是否响应用户事件(如单击窗体)。属性值为True或FalseEnabled8决定窗体的左上角设置控制菜单按钮,选择True或FalseControlBox7标题。也是程序运行后在标题栏所显示的内容Caption6窗体边框样式。有六种选择,只能在属性窗口选择BorderStyle5背景色。在属性窗口选择或者程序代码设置BackColor443VisualBasic程序设计教程这四个属性决定窗体的大小和位置。程序可进行设置。Height、Width设置窗体的高度和宽度。Top为窗体到屏幕顶部的距离,Left为窗体到屏幕左边的距离HeightWidthTopLeft11前景色。在属性窗口选择或者程序代码设置ForeColor10设置窗体上对象的字体、字型、大小等。可在程序中设置Font944VisualBasic程序设计教程设置窗体运行时的状态,0为正常,1为最小化,2为最大化WindowState16可见性。默认为True。False使窗体及窗体上的对象都不可见Visible15给窗体加载一个图像或图形Picture14确定窗体右上角最大化按钮是否有效。确定窗体右上角最小化按钮是否有效MaxButtonMinButton13指定图标。可以选择窗体最小化时的图标。选择图标文件。Icon1245VisualBasic程序设计教程2.6.3窗体的方法窗体方法就是对窗体的操作行为。方法使用格式为:Object.方法名[可选参数]Object为窗体对象的名称(Name),如果在当前活动窗体,可省略Object或者用关键字Me。46VisualBasic程序设计教程1.显示窗体方法(Show)功能:显示窗体对象。Show方法的使用格式为:Object.Show[Style]使用Show方法如果没有指定窗体名称,则默认当前活动窗体。参数Style是一个整数,决定窗体的模式,取值0为无模式,1为有模式47VisualBasic程序设计教程2.隐藏窗体方法(Hide)功能:隐藏窗体。注意这只是不显示窗体而不是卸载。要再次显示窗体,使用Show方法即可。Hide方法的格式为:Object.Hide如果Object没有被指定,则当前活动窗体被隐藏。48VisualBasic程序设计教程3.移动窗体方法(Move)Move方法可以移动或者改变窗体的大小。使用格式为:[Object].MoveLeft,[Top],[Width],[Height]其中,Left是必选参数,Top是可选参数,分别代表窗体的x,y方向的坐标。Width和Height为窗体移动到新位置后的高度和宽度。坐标参数的单位默认为缇(Twip,1/1440英寸)。可在窗体属性ScaleMode中选择参数单位。49VisualBasic程序设计教程4.清除窗体方法(Cls) Cls(ClearScreen)是清除窗体上的显示的文本和图形。如Me.Cls为清除当前窗体的显示。5.打印方法(Print) Print是在窗体上输出文本。6.打印窗体方法(PrintForm)把整个窗体作为位图图像输出到打印机。该方法使用的格式为:Object.PrintForm。50VisualBasic程序设计教程2.6.4
窗体识别的动作:事件在窗体中使用某种事件触发一个过程,以便完成某个任务,因此我们也叫它为事件过程。例如:PrivateSubForm_Load()……EndSub
51VisualBasic程序设计教程这里程序就是窗体的装载事件过程,称为Load过程,Load就是窗体的一个事件。窗体事件过程的一般格式为:PrivateSubForm_事件名(参数表)…… ‘我们在这里编写处理事件的程序代码EndSub52VisualBasic程序设计教程窗体常用事件:1.装载事件(Load)程序运行时,通过Load事件把窗体装载到内存。2.卸载事件(Unload)窗体卸载时触发Unload事件,使窗体从内存中退出并从屏幕上消失。PrivateSubForm_Unload(CancelAsInteger)53VisualBasic程序设计教程3.活动/非活动事件(Activate/Deactivate)PrivateSubForm_Activate()PrivateSubForm_Deactivate()使用Show可触发这个活动过程,使用Hide触发非活动过程。54VisualBasic程序设计教程4.重绘窗体事件(Paint/Resize)当窗体被移动或者改变大小时,触发Paint事件。如果在窗体上有图形输出,则可以使用Paint事件过程重绘图形。窗体改变了大小,原来窗体上的控件的布局比例发生了改变,为此可以进入Resize事件过程重新调整控件的布局,使之适合新的窗体大小。55VisualBasic程序设计教程2.6.6Tab键和焦点焦点——对象的活动状态。改变对象焦点的方法:1.使用鼠标点击或者使用Tab键使用Tab键焦点的移动次序与对象的Tabindex属性有关。56VisualBasic程序设计教程2.程序中改变对象. SetFocus对象.LostFocus一个对象能否得到焦点还与对象本身、对象的其他属性(Enabled)有关。57VisualBasic程序设计教程计算机的工作原理:数据输入→处理机(程序)→信息输出在构造一个程序时必须考虑:如何给变量赋值,如何输入数据并如何把有关计算结果输出。赋值就是把一个合适的值(数或字符)存入指定的变量中,而值的来源可以是程序直接产生,也可以是从键盘输入,也可以来自其他程序的传送或来自于文件。2.7赋值和输入输出58VisualBasic程序设计教程2.7.1如何进行赋值操作赋值语句的格式如下: [Let]变量名=表达式或者: 变量名=表达式例如:Sum=100 x=x+1CmdAdd.Caption=“计算”59VisualBasic程序设计教程使用赋值语句要注意以下问题:1.“=”不是数学中的等号的意思,是一个赋值的运算符,叫做赋值号。2.对变量的赋值后,以新值代替了原来的值。3.在表达式中的变量应先赋值。如果是首次直接被用在表达式中,则VB自动赋初值:(1)如果是数值型变量,则自动赋初值为0。(2)字符型变量的初值为空。60VisualBasic程序设计教程4.同一个变量出现在赋值号的两边的意义不同。在右边的变量是取出变量的值参与运算,在左边则是保存右边表达式结果值。5.一般要求变量的数据类型和表达式的结果值的类型一致,或者说表达式的值能够被所赋值的变量的类型所接纳。61VisualBasic程序设计教程【例2-3】计算半径为5的圆面积和圆周长。PrivateSubForm_Click() ConstPI=3.141526 '定义常量π DimRAsinteger,AreaAsSingle,PerimeterAsSingle'定义变量 R=5 '给半径变量赋值 Area=PI*R*R '计算后的面积值赋给变量Area Perimeter=2*PI*R '周长值赋给变量ParimeterPrint“半径=”;R,”面积”;Area,”周长”;Perimeter '输出半径、面积。周长EndSub
62VisualBasic程序设计教程2.7.2使用输入对话框InputBox函数【例2-4】计算半径为R的圆面积和周长,半径值由键盘输入。PrivateSubForm_Click()ConstPI=3.141526DimRAsInteger,AreaAsSingle,PerimeterAsSingleR=Val(InputBox("请输入圆的半径:","输入"))Area=PI*R*RPerimeter=2*PI*RPrint"半径=";R,"面积";Area,"周长";PerimeterEndSub
这个例子中使用了InputBox函数产生输入对话框。63VisualBasic程序设计教程1.输入对话框的使用InputBox函数的使用格式如下:InputBox(提示[,标题][,默认值][,xpos][,ypox])它们的含义如下:(1)提示信息。这是InputBox对话框所必须的信息,也可以使用空文本,即“”。(2)标题。这是在对话框窗口标题栏显示的内容。可设置,也可以没有标题。64VisualBasic程序设计教程(3)默认值。在输入框中的默认输入。系统默认为空,可选。(4)xpos和ypos为对话框的左侧与屏幕左边的距离和上边与屏幕顶部的距离值。可选。65VisualBasic程序设计教程2.在提示中使用多行文本如果提示信息比较多,可以使用ASCII控制符回车Chr(13)和换行符Chr(10)产生另起一行。例如:提示信息为“请输入圆的半径”+Chr(13)+Chr(10)+“使用正整数”,产生如图效果66VisualBasic程序设计教程3.使用转换函数InputBox函数接受的是文本,也就是字符型数据,在程序中根据变量类型不同,可以使用转换函数。如:R=Val(InputBox("请输入圆的半径:","输入"))这里的Val就是转换函数,将文本类型的数据转换为整型数以便参加运算。VB提供了在不同类型数据之间的转换。67VisualBasic程序设计教程2.7.3使用Print方法输出数据使用Print在对象中显示(打印)输出文本。使用格式如下:
[对象名].Print[表达式][,表达式]……1.对象名一般情况下,Print输出到窗体或者图片框。在本窗体中输出,可以缺省对象名。68VisualBasic程序设计教程2.表达式Print方法支持多个表达式的输出,可输出数字、文字字符、日期、逻辑值等。如果Print后面没有任何表达式,则输出空行(在显示效果上相当于回车换行)。69VisualBasic程序设计教程3.输出格式多个表达式输出,可以使用分号和逗号分隔。(1)逗号分隔(标准格式输出)。逗号后的下一个表达式按照14个字符的空间分开显示。实际分隔位置还与所在输出行的宽度和分隔的数目有关。(2)分号分隔(紧凑格式输出)。后一个表达式的值接着前一个表达式的输出。70VisualBasic程序设计教程(3)在Print语句最后使用逗号或分号结束,不换行,下一个Print接着按格式输出。(4)使用Spc()和Tab()函数,前者控制插入空格,后者确定列位置71VisualBasic程序设计教程例:PrivateSubForm_click()Me.FontSize=16Print'空行Print"A=";1,"B=";2Print1,2;3,4Print"A";Spc(4);"B"PrintTab(10);"B"Print"1234567890"EndSub72VisualBasic程序设计教程
2.7.4使用消息对话框MsgBox函数MsgBox函数提供了一个显示应用程序运行信息的标准途径,如图所示:MsgBox的格式如下:变量名=MsgBox(提示[,对话框类型][,对话框标题])73VisualBasic程序设计教程(1)使用形式:MsgBox有两种使用形式,注意区分,如:A=MsgBox("您确定要退出吗?",vbOKCancel+vbDefaultButton2,"退出")和MsgBox"您确定要退出吗?",vbOKCancel+vbDefaultButton2,"退出“
格式1是具有返回值的使用,程序根据
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 质量检测合同模板
- 2024年度平房区环境整治:建筑施工合同范本
- 开发商授权拆迁补偿合同
- 2024年住家保姆工作协议
- 劳务协议书样式
- 简单工程承包协议范例
- 2024标准临时用工合同样本
- 2024年苏州市租房合同范本
- 拼车服务协议示例
- 2024中介的买卖合同书范文
- 初中语文人教七年级上册要拿我当一挺机关枪使用
- 北京颂歌原版五线谱钢琴谱正谱乐谱
- 病史采集和临床检查方法
- PSUR模板仅供参考
- 火力发电企业作业活动风险分级管控清单(参考)
- 民法典合同编之保证合同实务解读PPT
- 全国第四轮学科评估PPT幻灯片课件(PPT 24页)
- 大气污染控制工程课程设计-某厂酸洗硫酸烟雾治理设施设计
- 名牌包包网红主播电商直播带货话术脚本
- 高考语文作文素材人物速递——苏炳添课件18张
- 蛋鸡养殖场管理制度管理办法
评论
0/150
提交评论