VisualBasic变量、常数和数据类型及过程概述六

2016-02-19 13:33 5 1 收藏

下面这个VisualBasic变量、常数和数据类型及过程概述六教程由图老师小编精心推荐选出,过程简单易学超容易上手,喜欢就要赶紧get起来哦!

【 tulaoshi.com - 编程语言 】

  提供可选参数的缺省值
  
  也可以给可选参数指定缺省值。在下例中,如果未将可选参数传递到函数过程,则返回一个缺省值。
  SubListText(xAsString,OptionalyAs_
  Integer=12345)
    List1.AddItemx
    List1.AddItemy
  EndSub
  
  PrivateSubCommand1_Click()
    strName="yourname"   '未提供第二个参数。
    CallListText(strName)   '添加“yourname”和“12345”。
  EndSub
  使用不定数量的参数一般说来,过程调用中的参数个数应等于过程说明的参数个数。可用ParamArray关键字指明,过程将接受任意个数的参数。于是可以这样来编写计算总和的Sum函数:
  DimxAsInteger
  DimyAsInteger
  DimintSumAsInteger
  
  SubSum(ParamArrayintNums())
     ForEachxInintNums
     y=y x
     Nextx
     intSum=y
  EndSub
  
  PrivateSubCommand1_Click()
     Sum1,3,5,7,8
     List1.AddItemintSum
  EndSub
  
  用命名的参数创建简单语句
  对许多内建函数、语句和方法,VisualBasic提供了命名参数方法来快捷传递参数值。对命名参数,通过给命名参数赋值,就可按任意次序提供任意多参数。为此,键入命名参数,其后为冒号、等号和值(MyArgument:="SomeValue"),可以按任意次序安排这些赋值,它们之间用逗号分开。注意,下例中的参数顺序和所要参数的顺序相反:
  FunctionListText(strNameAsString,OptionalstrAddressAsString)
     List1.AddItemstrName
     List2.AddItemstrAddress
  EndSub
  
  PrivateSubCommand1_Click()
     ListTextstrAddress:="12345",strName:="YourName"
     EndSub
  如果过程有若干不必总要指定的可选参数,则上述内容更为有用。
  
  确定对命名参数的支持
  要确定哪一个函数、语句和方法支持命名参数,用“代码”窗口中的“AutoQuickInfo”功能,检查“对象浏览器”,或者参阅语言参考。使用命名参数时要注意以下几点:
   在VisualBasic(VB)对象库中的对象的方法不支持命名参数。而VisualBasicforapplications(VBA)对象库中的所有的语言关键字都支持命名的参数。
   在语法中,命名参数是用粗体和斜体字表示的。所有其它参数只用斜体字表示。
  重点使用命名参数时不能省略所需参数的输入。可以只省略可选参数。对于VisualBasic(VB)和VisualBasicforapplications(VBA)对象库,“对象浏览器”对话框将可选参数用方括号[]括起来。
  详细信息请参阅语言参考中的"ByVal"、"ByRef"、"Optional"和"ParamArray"。
  
  控制结构概述
  有了控制结构就可控制程序执行的流程。如果未复选控制流语句,程序便从左至右、自顶向下地贯穿这些语句。有些简单程序可以只用单向流程来编写,有些流程可以依靠运算符的优先级来控制,但任何编程语言的效力和用途皆由其通过结构和循环改变语句顺序的能力而得。
  
  判定结构
  VisualBasic过程能够测试条件式,然后根据测试结果执行不同的操作。
  VisualBasic支持的判定结构有:
  1.If...Then
  2.If...Then...Else
  3.SelectCase
  If...Then
  用If...Then结构有条件地执行一个或多个语句。单行语法和多行块语法都可以使用:
  IfconditionThenstatement
  IfconditionThen
    statements
  EndIf
  condition通常是比较式,但它可以是任何计算数值的表达式。VisualBasic将这个值解释为True或False:一个为零的数值为False,而任何非零数值都被看作True。若condition为True,则VisualBasic执行Then关键字后面的所有statements。可以使用单行或多行语法有条件地执行一个语句(下面两个例子等价):
  IfanyDateNowThenanyDate=Now
  
  IfanyDateNowThen
     anyDate=Now
  EndIf
  注意:If...Then的单行格式不用EndIf语句。如果condition为True时要执行多行代码,则必须使用多行块If...Then...EndIf语法。
  IfanyDateNowThen
     anyDate=Now
     Timer1.Enabled=False   '定时器控制失效。
  EndIf
  
  If...Then...Else
  用If...Then...Else块定义几个语句块,执行其中一个语句:
  Ifcondition1Then
     [statementblock-1]
  [ElseIfcondition2Then
     [statementblock-2]]...
  [Else
     [statementblock-n]]
  EndIf
  VisualBasic首先测试condition1。如果它为False,VisualBasic就测试condition2,依此类推,直到找到一个为True的条件。当它找到一个为True的条件时,VisualBasic就会执行相应的语句块,然后执行EndIf后面的代码。作为一个选择,可以包含Else语句块,如果条件都不是True,则VisualBasic执行Else语句块。
  If...Then...ElseIf只是If...Then...Else的一个特例。注意,可以使用任意数量的ElseIf子句,或者一个也不用。可以有一个Else子句,而不管有没有ElseIf子句。
  例如,应用程序可以根据菜单控件数组中哪个控件被单击而采取相应的动作:
  PrivateSubmnuCut_Click(IndexAsInteger)
    IfIndex=0Then   '“剪切”命令。
     CopyActiveControl   '调用通用过程。
     ClearActiveControl
    ElseIfIndex=1Then   '“复制”命令。
     CopyActiveControl
    ElseIfIndex=2Then   '“清除”命令。
     ClearActiveControl
    Else     '“粘贴”命令。
     PasteActiveControl
    EndIf
  EndSub
  注意,总是可以添加更多的ElseIf块到If...Then结构中去。但是,当每个ElseIf都将相同的表达式比作不同的数值时,这个结构编写起来很乏味。在这种情况下可以使用SelectCase判定结构。
  详细信息请参阅《VisualBasic6.0语言参考手册》中的“If...Then...Else语句”。
  
  SelectCase
  VisualBasic提供SelectCase结构替代If...Then...Else,从而可在多个语句块中有选择地执行其中一个。SelectCase语句的能力与If...Then...Else语句类似,但对多重选择的情况,SelectCase语句使代码更加易读。
  SelectCase在结构的上方处理一个测试表达式并只计算一次。然后,VisualBasic将表达式的值与结构中的每个Case的值进行比较。如果相等,就执行与该Case相关联的语句块。
  SelectCasetestexpression
    [Caseexpressionlist1
     [statementblock-1]]
    [Caseexpressionlist2
     [statementblock-2]]
     .
     .
     .
    [CaseElse
     [statementblock-n]]
  
  EndSelect
  每一个expressionlist是一个或几个值的列表。如果在一个列表中有多个值,就用逗号把值隔开。每一个statementblock中含有零个或多个语句。
  如果不止一个Case与测试表达式相匹配,则只对第一个匹配的Case执行与之相关联的语句块。如果在表达式列表中没有一个值与测试表达式相匹配,则VisualBasic执行CaseElse子句(此项是可选的)中的语句。
  例如,假定在If...Then...Else的例子中要向“编辑”菜单添加命令。为此可以另加一个ElseIf子句,或用SelectCase来写函数:
  PrivateSubmnuCut_Click(IndexAsInteger)
     SelectCaseIndex
    Case0    '“剪切”命令。
    CopyActiveControl  '调用通用过程。
    ClearActiveControl
    Case1    '“复制”命令。
    CopyActiveControl
    Case2    '“清除”命令。
    ClearActiveControl
    Case3    '“粘贴”命令。
    PasteActiveControl
    CaseElse
    frmFind.Show   '显示找到的对话框。
     EndSelect
  EndSub
  注意SelectCase结构每次都要在开始处计算表达式的值。而If...Then...Else结构为每个ElseIf语句计算不同的表达式。只有在If语句和每一个ElseIf语句计算相同表达式时,才能用SelectCase结构替换If...Then...Else结构。
  

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)->

来源:http://www.tulaoshi.com/n/20160219/1604625.html

延伸阅读
标签: ASP
ASP只有一种数据类型那就是"variant "。它是一种特殊的数据类型能够根据它的使用表示很多不同种类的信息。因为它是ASP中唯一的数据类型,它也是ASP中所有函数返回值的唯一类型。它很简单的,"variant"数据类型能够表示数字或者是字符串。当你在ASP程序中把它当做是数字,它就自动转化为"Numeric",如果用它为字符串,它也同样就是"String"了。也...
VBScript只有一种数据类型,称为Variant。Variant是一种特殊的数据类型,根据使用的方式,它可以包含不同类别的信息。因为Variant是VBScript中唯一的数据类型,所以它也是VBScript中所有函数的返回值的数据类型。 最简单的Variant可以包含数字或字符串信息。Variant用于数字上下文中时作为数字处理,用于字符串上下文中时作为字符串处...
中文Access2000速成教程--1.8定义 ACCESS集锦 Access新手来看:Access的特点、概 要精通ACCESS需掌握的内容 用Access 2000进行班级管理 一篇详细讲述mysql和access区别的 中文Access2000速成教程--1.1使用 Access使用查询 Access 数据库安全攻防策略 Access命令行参数 文本 nvarchar(n) 备注 ntext 数字(长整型) int 数字(整型) smallint ...
标量(scalar)数据类型 标量(scalar)数据类型没有内部组件,他们大致可分为以下四类: . number . character . date/time . boolean 表1显示了数字数据类型;表2显示了字符数据类型;表3显示了日期和布尔数据类型。 表1 Scalar Types:Numeric Datatype Range Subtypes description BINARY_INTEGER...
标签: Java JAVA基础
     一些初学JAVA的朋友可能会遇到JAVA的数据类型之间转换的苦恼,例如,整数和float,double型之间的转换,整数和String类型之间的转换,以及处理、显示时间方面的问题等。下面笔者就开发中的一些体会介绍给大家。     我们知道,Java的数据类型分为三大类,即布尔型、字符型和数值型,而其中数值型又分为整型...

经验教程

783

收藏

73
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部