精华内容
下载资源
问答
  • 细谈VB中function程序应用问题!

    万次阅读 热门讨论 2012-06-06 21:14:05
    可作为独立的基本语句调用,也可以在程序或是函数中嵌套使用。它有返回值。Vb 中有许多内置的函数,如sin, cos, abs 等。如果过程需要多次用到某一公式或函数时,VB中有没有可用的参数,此时,Function过程就派

                                               
    在VB中function 程序如何应用?

           Function 过程是由用户定义的独立的函数过程,与Sub字程序类似。Function 函数过程可读取参数,修改语句。可作为独立的基本语句调用,也可以在程序或是函数中嵌套使用。它有返回值。Vb 中有许多内置的函数,如sin, cos, abs 等。如果过程需要多次用到某一公式或函数时,VB中有没有可用的参数,此时,Function过程就派上用场了。

     Function 过程的语法为:

      [private | public ] [static] Function (函数名)([形参表])  [as(类型)]
      [语句列] [(函数名)= (表达式)]
      Exit gunction
      [语句列] [(函数名)=(表达式)]
      End function

    说明: 中括号内的可省略, Function 函数程序跟Sub 字程序过程类似。只是as (类型)表示Function的返回值是as 指向的类型。还有一种可以创建Function 过程, 在工具 添加过程, 在添加过程中的对话框中,名称由用户自定义,可以是字母、数字、下划线等。 在类型中选择函数选项,点击确定。OK! Function 函数过程创建完毕。

    函数过程的调用:
          1, call 语句。 Call (过程名) [实参表]
          2, 直接调用。(过程名) [ 实参表]
          3, 无参数直接调用。
       举例:
        Function f2
        F2=”Flollow me.”
        End Function

    关于vb function  


    谁能清楚地介绍vb function过程,阐明它是如何返回值的? 下面这段代码表示什么意义?

    Dim y As Integer 
    Private Sub Command1_Click() 
    Dim x As Integer 
    x=2 
    Text1.Text=f2(f1(x),y) 
    Text2.Text=f1(x) 
    End Sub 
    
    Private Function f1(x As Integer)As Integer 
    x=x+y:y=y+x 
    f1=x+y 
    End Function 
    
    Private Function f2(x As Integer,y As Integer)As Integer 
    f2=2*x+y 
    End Function 
    
    


    以下是我的一个分析过程,由于我对流程图不是很擅长.就把每一话都分析了一下。
    Dim Y As Integer
    分析1 这一句定义了一个全局的整形变量y,对于这个y的理解是整个问题的关键.因为Y是全局变量,因此Y的值会保留,直到程序结束.又因为没有给Y赋值,所以系统会自动给Y赋0值.此时Y的值为0

    Private Sub Command1_Click() '命令按钮1的单击事件
    Dim x As Integer
    这一句定义了一个过程级变量X.过程级变量指的是,该变量的生存期只在过程内,即在Command1_Click()过程内有效.若X在其他过程内出现,那么系统也会给X赋0值.
    分析2 x=2 给X赋值.此时X的值为2

    Text1.Text= f2(f1(x),y)
    接下来也就到了程序的难点了.我相信你要的也是这一句的分析过程,当然,我也会详细的分析.
    首先来简单说一下.这一句中,程序首先调用函数f1,得出f1的值,再调用函数f2,得出f2的值,最后再将f2的值在文本框内显示.
    当程序执行到此处时,程序会首先调用函数f1,执行f1内的语句.也就是说,程序执行到此处时,会首先执行Private Function f1(x As Integer)As Integer 内的语句.
    因此,这里跳到此语句分析.

    Private Function f1(x As Integer)As Integer
    这一句的意思是,函数f2返回一个整形变量,调用此函数时,必须提供一个参数X,该参数按址传递.当程序执行到此处时,程序会自动将调用者f1(参数)中的参数部分赋于X.

    分析3 x=x+y
    这一句的意思是,将X的值与Y的值相加,再赋于X.因为X=2,Y=0,所以X=2+0=2,即X=2.(关于为什么X=2,请参看分析2.为什么Y=0,请参看分析1),此时X=2.

    分析4
    y=y+x
    这一句的意思就是,将Y的值与X想加,再赋于Y.因为X=2(为什么X=2?参见分析3),Y=0(为什么Y=0?参见分析1),所以Y=Y+X=0+2=2,此时Y的值为2,即Y=2.

    分析5
    f1=x+y
    将X+Y的结果赋于f1.因为x=2(参看分析3),Y=2(参看分析4),所以f1=X+Y=2+4=4,也即f1=4.

    当程序执行到这里后,由于已经得出f1的值,程序跳会Text1.Text=f2(f1(x),y)这一句执行.因为f1=4(为什么f1=4?参看分析5),所以此时代码可简化为:

    Text1.Text=f2(4,y)

    这一句的意思是,调用函数f2,再将f2的值赋于文本框,当中调用者提供了两个参数,即4和Y.

    分析6
    此时程序会跳到Private Function f2(x As Integer,y As Integer)As Integer 函数过程内执行.这个函数过程的意思是,将第一个参数赋于X,将第二个参数赋于Y.因为f2(4,y)第一个参数为4,因此X=4,第二个参数为Y,因此Y=Y.

    分析7
    f2=2*x+y
    此为数学运算,意思再明显不过.计算2*X+Y的值,再将结果赋于f2,因此f2=2*x+y=2*4+2=8+2=10(为什么X等于4?参看分析6)(为什么Y等于2?参看分析4),所以f2=10.

    计算出f2的值以后,回到Text1.Text=f2(4,y)内执行.因为f2=10(为什么等于10?参见分析7),即Text1.Text=10,所以文本框控件显示的是10.

    请您自己分析Text2.Text=f1(x)这一句的程序执行结果.当中的要点我都已经进行了详细的解说,精确到点.如果您仍然不明白,那就应该好好的看一下书了.

    vb Function 参数如何定义

    一、子过程的定义与调用

    1、子过程的种类

    (1)在VB中,有两类子(SUB)过程:事件过程和通用过程

      事件过程

            事件过程是在响应事件时执行的代码块。事件过程一般由VB创建,用户不能增加或删除。缺省时事件过程是私有的。事件过程是附加在窗体和控件上的。其控件事件的语法为:

           Private Sub <控件名>_<事件名>([形参表])

           [(语句组)]

           End SUB

    通用过程

    通用过程是指必须由其他过程显示调用的代码块。通用过程由用户自己创建。在一个过程中,通用过程可以被其他过程调用,这样会提高代码的利用率。通用过程又分为子过程和函数过程。

    (2)定义通用过程

    通用过程通常完成指定的任务,通用过程不与任何特定的事件相联系,只能由别的过程来调用,它可以存储在窗体或标准模块中。

    子过程的形式如下:

    [ Static][Public | Private ] Sub 过程名([形参表])

    局部变量或常数定义

    语句块

    [Exit Sub]

    语句块

    End Sub

    说明:可以将子过程放入标准模块、类模块和窗体模块中。按缺省规定,所有模块中的子过程为PUBLIC(公用的),这意味在应用程序中可随处调用它们;如果选用PRIVATE,只有该过程所在模块中的程序才能调用该过程。

          如果使用STATIC(静态)关键字,则该过程中的所有局部变量的存储空间只分配一次,且这此致变量的值在整个程序运行期间都存在,即在每次调用该过程时,各局部变量的值一直存在;如果省略STATIC,过程每次被调用时重新为其变量分配存储空间,当该过程结束时释放变量的存储空间。

    形参表类似于变量声明,它声明了从调用过程传递进来的值。指明了传送过程的变量个数和类型,各变量之间用逗号分隔。形式参数被缺省为具有Variant数据类型。

    建立通用过程的目的之一就是减少重复代码,将公共语句放入离开的过程(通用过程)并由事件过程来调用它。

    (3)创建新的通用过程

    两种方法:

     使用“添加过程”对话框

     在“代码编辑器”窗口中输入

    查看过程
      查看当前模块中的过程

      查看其他模块中的过程

    (4)调用过程

    形式:(1)CALL 子过程名[(实参列表)]

    (2)子过程名[实参列表]

    举例:

    (1)在一个窗口中包含3个命令按纽,当用户单击其中一个时,要求其他个别按纽不能使用,并且窗口中按纽是相同的,其处理方法一致,用一个过程来实现。

    (2)利用子程序的设计方法,先分别计算5!+6!+8!值的程序。

    二、函数过程的定义和调用

           函数是过程的另一种形式,当子过程的执行返回一个值时,把它作为函数就比较简单。VB包含了许多内置的或内部的函数,用户在编写程序时,只需要写出一个函数名并给定参数就能得出函数值。当程序中需要多次用到某一公式或要调用它们,这样的函数称为用户定义函数。用户定义函数与内部函数一样,可以在程序中或函数嵌中使用。

    函数过程的定义

    (1)利用“工具”菜单下的“添加过程”命令定义

    (2)利用代码窗口直接定义

    自定义函数过程的形式如下:

    [ Static][Public | Private ] Function 函数过程名([参数列表])[AS 类型]

    局部变量或常数定义

    语句块

    函数名=返回值

    [Exit Function]

    语句块

    函数名=返回值

    End Function

    函数过程的调用

    形式:函数过程名([参数列表])

    说明:在VB中调用FUNCTION过程的方法和调用任何内部函数的方法是一样的。还可以像调用SUB过程那样调用函数过程。

    例:已知直角三角形两直角边的值,计算第三边(斜边)的函数。

    Function nuse(a as interger, b as interger ) as single

         Nuse=sqr(a^2+b^2)

    End Function

    在VB中调用FUNCTION过程的方法:strx=nuse(width, Height)

    也可以用下面的语句调用了同一个函数过程:call nuse(3,6)     或     nuse 3,6

    举例:

    (1)设计计算圆面积的用户定义函数。

    (2)已知长和宽,计算矩形面积的函数。

    (3)设计求任意整数N的阶乘的函数,然后求3到10的阶乘之和。

    注:函数与过程的区别

    函数以FUNCTION开头,而过程以SUB开头

           当过程有一个返回值时,可以使用函数。当过程有多个返回值时,就当用过程。

    函数是通过函数名回送一个结果值。在函数的形式参数表后面要说明函数(即结果)的类型。而过程的结果由参数送回。

    函数体中至少要包括一个给函数赋值的语句。而过程不能给过程名赋值。

           函数的调用出现在表达式中。而过程的调用必须作为一个单独的语句。

    形参没有具体的值,只代表了参数的个数、位置、类型;只能上简单变量,不能是常量、数组元素、表达式。

    三、参数传递

            在调用一个有参数的过程,首先进行的是“形实结合”,即按传值传递或按地址传递方式,实现调用程序和被调用的过程之间的数据传递。通过参数传递,Sub过程或Function过程就能根据不同的变量执行同种任务。为了叙述方便,将形式参数简称为形参,实在参数简称为实参。

           在Visual Basic中传递参数有两种方式,即按值传递(Passed by Value)和按地址传递(Passed by refecence)。按值传递参数时,传递的只是实参变量的副本。如果在被调过程中改变了形参值,只影响副本,而不会影响实参变量本身。即当控制返回调用程序时,实参变量保持调用前的值不变。在定义过程时,若形参名前面没有关键字“ByVal”,即形参名前面缺省修饰词,或有“ByRef”关键字时,则指定了它是一个按地址传递的参数。按地址传递参数时,把实参变量(简单变量、数组元素、数组以记录等)的地址传送给被调过程。因此实参变量的地址和与之结合的形参地址是相同的,也就是说形参和实参共用内存的同一“地址”,即共享同一个存储单元。这样在被调过程中的形式参数值一旦被改变,相应的实参值也跟随着被改变了。

    形式参数与实际参数

           形式参数是指在定义通用过程时,出现在SUB或FUNCTION语句中的变量,是接收传送子过程的变量。形式参数表的各个变量之间用逗号分隔。实际参数是指在调用SUB或FUNCTION过程时,传送给SUB或FUNCTION过程的常量、变量或表达式。实参表可由常量、表达式、有效的变量名、数组名组成,实参表中各参数用逗号分隔。

    按值传递和按地址传递

           传递参数的方式有两种:如果CALL语句中的实际参数是常量或表达式,或者定义过程时选用ByVall关键字,就可以按值传递。如果CALL语句中的实际参数为变量,或者定义过程时选用ByRef关键字,就可以按地址传递。否则缺省按地址传递参数。

    (1)按值传递参数

           按地址传递参数时,传递的只是变量的副本。如果过程改变了这个值,则所作变量只影响副本而不会影响变量本身。当要求变量按值传送时,可以先把变量变成一个表达式,把变量转换成表达式的最简单的方法就是把它放在括号内。或者定义过程时用ByVal关键字指出参数是按值来传递的。例如:Sub Post (ByVal     num     as     Integer )

    例:运行下面给出的程序,理解按值传递参数。

    Private Sub Form_Click( )
    
         Dim a as intger, b as integer, c as integer
    
         A=5: b=3 : c=9
    
    Cls
    
    Print a; b; c
    
    Call prod( (a), (b), (c) )
    
    Print a; b; c
    
    End     Sub
    
    Sub prod (a as intger, b as integer, c as integer )
    
         Print a; b; c
    
    a=6 : b=8 : c=a*b
    
         print a; b; c
    
    


    (2)按地址传递参数

          按地址传参数,就是让过程根据变量的内存地址去访问实际变量的内容,即形式参数与实际参数使用相同的内存地址单元, 这样通过子过程就可以改变变量本身的值。系统缺省按地址传递参数。在传递调用时,实际参数必须是变量,常量或表达式无法传址。

    例:运行下面给出的程序,理解按地址传递参数。

    Private Sub Form_Click( )
    
         Dim a as intger, b as integer, c as integer
    
         A=5: b=3 : c=9
    
    Cls
    
    Print a; b; c
    
    Call prod( a, b, c )
    
    Print a; b; c
    
    End Sub
    
    Sub prod (x as intger, y as integer, z as integer )
    
         Print x; y; z
    
    x=6 : y=8 : z=x*y
    
         print x; y; z
    
    


    举例:

    Private Sub Form_Click( )
    
         Dim x as intger, y as integer
    
         X=8 : y=3
    
         Call test(5, x, y+1)                  ‘5传值,X传址, Y+1传值
    
    Print “主程序”,5, x, y
    
    End Sub
    
    Sub test (a as intger, b as integer, c as integer )
    
         Print “子程序”, a, b, c
    
         A=2: b=4: c=9
    
    End Sub
    
    


    四、过程的嵌套和递归调用

    1、过程的嵌套

    2、过程的递归调用

           递归调用是指一个过程直接或间接调用自己本身,即自己调用自己。VB的过程具有递归调用功能,递归调用在处理阶乘运算、级数运算、幂指数运算等方面特别有效。

           递归是一种十分有用的程序设计技术。由于很多的数学模型和算法设计方法本来就递归的。用递归过程描述它们比用非递归方法简洁易读,可理解性好,算法的正确性证明也比较容易,因此读者应掌握递归程序设方法。递归过程是在过程定义中调用(或间接调用)本过程的过程。在递归调用中,一个过程执行的某一步要用到它自身的前面一步或前若干步的结果。

     五、变量的作用范围
     
    作用域                                              定义方式

       局部变量                                             Dim,Static
       模块级变量                                         Dim,Private   

       全局变量                                             Public       
     

    变量的定义位置
     
        过程之中
     
        模块的声明段中
     
        模块的声明段中
     

    能否被本模块中其它过程访问
     
      ×
     
      √
     
      √
     

    能否被其它模块访问
     
      ×
     
      ×
     
      √
     

           变量的作用范围不同时,变量的名字可以相同。变量的作用范围还可以出现交叉。一般来说,当变量名称相同而作用域不同时,局限性大的变量总会用“阴影”遮住局限性不太大的变量(即优先访问局限性大的变量)。例如,程序中有一个模块级变量Temp,还有一个名为Temp的过程级变量,则它的“阴影”会遮住模块级变量Temp。

           在一个过程内部用Dim语句定义的变量是局部变量,只有在定义它们的过程中才能访问或改变变量的值,这样的变量成为局部变量;为了使某个变量在整个模块的所有过程中都能使用,在模块的(通用)和(声明)部分使用Private或Dim语句定义的变量就是模块级变量,在该模块中任何过程都可以对模块级变量进行读、写操作;在模块的(通用)和(声明)部分使用Public语句定义的变量就是全局变量,在应用程序的任何部分都可以对全局变量进行读、写操作。

           使用Dim在过程中定义的变量,在过程结束后变量的值不能被保存下来。在每一次过程重新执行时,变量的内容将被清除。如果希望在离开该过程后,还能保存过程中局部变量的值,就应该使用Static关键字在过程中定义局部变量,即使过程结束,变量的值仍然保留着。

           Visual Basic程序的窗体模块、标准模块和类模块可以定义变量,在过程和函数中也可以定义变量。在不同部分定义的变量在程序中的适用范围是不同的。Visual Basic中的变量可以分为局部变量(过程级变量)、模块级变量和全局变量。

    过程级变量

           在一个过程内部声明变量时,只有该过程内部的代码才能访问或改变该变量的值。过程级变量的作用范围限制在该过程。在过程内部使用DIM或STATIC关键字声明变量。

           如果在过程中未作说明而直接使用某个变量,该变量也被当成过程级变量。用STATIC说明的变量在应用程序的整个运行过程中都一直存在,而用DIM说明的变量只在过程执行时存在,退出过程后,这类变量就会消失。过程变量通常用于保存临时数据。

    1、过程级变量

    在模块有声明中声明的变量属于模块级变量。模块级变量分为两种:私有和公有。

    (1)私有的模块变量

           私有的模块级变量在说明它的整个模块中的所有过程中都能使用,但其他模块却不能访问该变量。说明方法是在模块的声明中使用PRIVATE或DIM关键字声明变量。

    (2)公有的模块级变量

          公有的模块级变量在所有模块中的所有过程中都能使用。它的作用范围是整个应用程序,因此公有模块级变量属于全局变量。说明方法是在模块的声明中使用PUBLIC关键字声明。

          全程变量是指在所有程序(包括主程序和过程)中都可以使用的内存变量。全程变量就像在一个过程中定义的变量一样,在子过程中可以任意改变和调用,当某子过程执行完后,其值带回主程序。

    2、变量的生存期

    (1)动态变量

           动态变量是指程序运行后进入变量所在的子程序,才分配该变量的内存单元,经过处理退出该过程,该变量占用的内存单元自动释放,其值消失,其内存能被其他变量占用。

           使用DIM关键字在过程中声明的局部变量,在过程执行结束后变量的值不被保留,在每一次重新执行过程时,变量重新声明。用DIM声明的变量属于动态变量。

    (2)静态变量

           静态变量是指程序运行进入该变量所在的子程序,修改变量的值后,退出该子程序,其值仍被保留,即变量所占内存单元没有释放。当以后再次进入该子程序,原来变量的值可以继续使用。

          使用STATIC关键字在过程中声明的局部变量,就属于静态变量。静态变量在过程退出后仍然可以保持原来的值。


     
     

    展开全文
  • 有一个函数定义为 ``` Private Function CountOrder(ByRef SampleNo As Short) As Short ``` 执行如下语句: (其中一段) ``` If (SampleNo >= 90 Or SampleNo ) Then CountOrder = 90 Exit Function ...
  • VB中function的应用

    千次阅读 2014-05-05 12:01:38
    函数过程的调用: 1, call 语句。 Call (过程名) [实参表] 2, 直接调用。(过程名) [ 实参表] 3, 无参数直接调用。 举例  Function f2  F2=”Flollow me.”  End Function 关于vb function ...


     

    函数过程的调用: 1, call 语句。 Call (过程名) [实参表] 2, 直接调用。(过程名) [ 实参表] 3, 无参数直接调用。 举例
       Function f2
        F2=”Flollow me.”
        End Function

    关于vb function

    (1)有谁能清楚地介绍vb function过程,说明它是如何返回值的?
    (2)下面这段代码表示什么意义:
    Dim y As Integer
    Private Sub Command1_Click()
    Dim x As Integer
    x=2
    Text1.Text=f2(f1(x),y)
    Text2.Text=f1(x)
    End Sub

    Private Function f1(x As Integer)As Integer
    x=x+y:y=y+x
    f1=x+y
    End Function

    Private Function f2(x As Integer,y As Integer)As Integer
    f2=2*x+y
    End Function

    以下为小的详细写的一个分析过程,我会一句一句的来分析.我觉得流程图没什么用,反正我是看不懂流程图的.
    Dim Y As Integer
    分析1 这一句定义了一个全局的整形变量y,对于这个y的理解是整个成绩的关键.因为Y是全局变量,因此Y的值会保留,直到程序结束.又因为没有给Y赋值,所以系统会自动给Y赋0值.此时Y的值为0

    Private Sub Command1_Click() '敕令按钮1的单击事宜
    Dim x As Integer
    这一句定义了一个过程级变量X.过程级变量指的是,该变量的生存期只在过程内,即在Command1_Click()过程内有效.若X在其他过程内出现,那么系统也会给X赋0值.
    分析2 x=2 给X赋值.此时X的值为2

    Text1.Text= f2(f1(x),y)
    接下来也就到了程序的难点了.我相信你要的也是这一句的分析过程,当然,我也会详细的分析.
    首先来简单说一下.这一句中,程序首先调用函数f1,得出f1的值,再调用函数f2,得出f2的值,最初再将f2的值在文本框内显示.
    当程序执行到此处时,程序会首先调用函数f1,执行f1内的语句.也就是说,程序执行到此处时,会首先执行Private Function f1(x As Integer)As Integer 内的语句.
    因此,这里跳到此语句分析.

    Private Function f1(x As Integer)As Integer
    这一句的意思是,函数f2返回一个整形变量,调用此函数时,必须提供一个参数X,该参数按址传递.当程序执行到此处时,程序会自动将调用者f1(参数)中的参数部份赋于X.

    分析3 x=x+y
    这一句的意思是,将X的值与Y的值相加,再赋于X.因为X=2,Y=0,所以X=2+0=2,即X=2.(关于为什么X=2,请参看分析2.为什么Y=0,请参看分析1),此时X=2.

    分析4
    y=y+x
    这一句的意思就是,将Y的值与X念加,再赋于Y.因为X=2(为什么X=2?拜见分析3),Y=0(为什么Y=0?拜见分析1),所以Y=Y+X=0+2=2,此时Y的值为2,即Y=2.

    分析5
    f1=x+y
    将X+Y的结果赋于f1.因为x=2(参看分析3),Y=2(参看分析4),所以f1=X+Y=2+4=4,也即f1=4.

    当程序执行到这里后,由于已经得出f1的值,程序跳会Text1.Text=f2(f1(x),y)这一句执行.因为f1=4(为什么f1=4?参看分析5),所以此时代码可简化为:

    Text1.Text=f2(4,y)

    这一句的意思是,调用函数f2,再将f2的值赋于文本框,当中调用者提供了两个参数,即4和Y.

    分析6
    此时程序会跳到Private Function f2(x As Integer,y As Integer)As Integer 函数过程内执行.这个函数过程的意思是,将第一个参数赋于X,将第二个参数赋于Y.因为f2(4,y)第一个参数为4,因此X=4,第二个参数为Y,因此Y=Y.

    分析7
    f2=2*x+y
    此为数学运算,意思再明显不过.计算2*X+Y的值,再将结果赋于f2,因此f2=2*x+y=2*4+2=8+2=10(为什么X等于4?参看分析6)(为什么Y等于2?参看分析4),所以f2=10.

    计算出f2的值以后,回到Text1.Text=f2(4,y)内执行.因为f2=10(为什么等于10?拜见分析7),即Text1.Text=10,所以文本框控件显示的是10.

    请您自己分析Text2.Text=f1(x)这一句的程序执行结果.当中的要点我都已经举行了详细的解说,精确到点.如果您仍然不分明,那就应该好好的看一下书了.

                    vb Function 参数如何定义

    【教学目的与要求】

    系统提供的内部函数过程和事宜过程,在运用程序的编写中,有时成绩比较复杂,按照结构化程序设计的原则,可把成绩逐步细化,分成若干个功能模块,通过VB提供的自定义过程将功能模块定义成一个过程,供事宜过程多次调用。使用过程的好处是合程序简练、便于调试和维护。

    在VB中自定义过程分为以下几种:以“SUB”保留字最先的为子过程;以“FUNCTION”保留字最先的为函数过程;以“Property”保留字最先的为属性过程;以“Event”保留字最先的为事宜过程。本章要求学生掌握用户自定义的子过程和函数过程。

    【教学内容与要点】

    n            子过程的定义与调用

    n            函数过程的定义和调用

    n            参数传递

    n            递归

    n            变量的作用范围



    【教学方法与手段】

    n                   多媒体教学:借助多媒体手段,举行课堂理论教学;

    n                   启发式教学:教学活动存眷的重点从结果转向过程。激发脑子,师生互动,增强学生学习的主动性、积极性和创造性;

    n                   民主教学:以学生为主体,以学习为中心,强化学生的学习主人翁熟悉。鼓励争辩,课堂氛围宽松和谐;

    n                   开放式教学:课上课下融合,校内校外联合。培养学生发散脑子,增年夜学生的学习自主权;

    n                   研究式教学:灌输式改变为研讨式、探索式。教师给思路,指点学生自主获取知识;

    n                   实践性教学:充分利用实验室,通过上机实习,加强学生的实践能力。

    【教学重点与难点】:过程的定义和调用;参数传递

    计划课时】:2课时

    教学质量评价

    n                   课堂提问及回答成绩情况

    n                   课外作业及质量完成情况

    n                   实验报告及质量完成情况

    教学组织过程

    在设计一个规模较年夜、复杂程度较高的程序时,往往根据需要按功能将程序分解成若干个相对自力的部份,然后对每个部份分袂编写一段程序。这些程序段块称为程序的逻辑部件。用这些逻辑部件可以机关一个完整的程序。这样极年夜地简化了程序设计任务。Visual Basic通常把这种逻辑部件称为过程。

    在VB中有3种过程:SUB(子)过程、FUNCTION(函数)过程和PROPERTY(属性)过程。属性过程用来返回和设置属性的值,也可以设置对象的引用,比较复杂,本章主要介绍SUB(子)过程和FUNCTION(函数)过程。

    一、子过程的定义与调用

    1、子过程的种类

    (1)在VB中,有两类子(SUB)过程:事宜过程和通用过程

    l                   事宜过程

               事宜过程是在响应事宜时执行的代码块。事宜过程一般由VB创建,用户不能增加或删除。缺省时事宜过程是私有的。事宜过程是附加在窗体和控件上的。其控件事宜的语法为:

           Private Sub <控件名>_<事宜名>([形参表])

           [(语句组)]

           End SUB

    l            通用过程

    通用过程是指必须由其他过程显示调用的代码块。通用过程由用户自己创建。在一个过程中,通用过程可以被其他过程调用,这样会提高代码的利用率。通用过程又分为子过程和函数过程。

    (2)定义通用过程

    通用过程通常完成指定的任务,通用过程不与任何特定的事宜相联系,只能由别的过程来调用,它可以存储在窗体或标准模块中。

    子过程的形式以下:

    [ Static][Public | Private ] Sub 过程名([形参表])

    局部变量或常数定义

    语句块

    [Exit Sub]

    语句块

    End Sub

    说明:可以将子过程放入标准模块、类模块和窗体模块中。按缺省规定,所有模块中的子过程为PUBLIC(公用的),这意味在运用程序中可随处调用它们;如果选用PRIVATE,只有该过程所在模块中的程序才能调用该过程。

    如果使用STATIC(静态)关键字,则该过程中的所有局部变量的存储空间只分配一次,且这此致变量的值在整个程序运行期间都存在,即在每次调用该过程时,各局部变量的值一直存在;如果省略STATIC,过程每次被调用时重新为其变量分配存储空间,当该过程结束时释放变量的存储空间。

    形参表类似于变量声明,它声明了从调用过程传递进来的值。指明了传送过程的变量个数和类型,各变量之间用逗号分隔。形式参数被缺省为具有Variant数据类型。

    建立通用过程的目的之一就是减少重复代码,将公共语句放入离开的过程(通用过程)并由事宜过程来调用它。

    (3)创建新的通用过程

    两种方法:

    l            使用“添加过程”对话框

    l            在“代码编辑器”窗口中输入

    查看过程

    l            查看当前模块中的过程

    l        &nbs爱情公寓4p;   查看其他模块中的过程

    (4)调用过程

    形式:(1)CALL 子过程名[(实参列表)]

    (2)子过程名[实参列表]

    举例:

    (1)在一个窗口中包含3个敕令按纽,当用户单击其中一个时,要求其他个别按纽不能使用,并且窗口中按纽是相同的,其处理方法一致,用一个过程来实现。

    (2)利用子程序的设计方法,先分袂计算5!+6!+8!值的程序。

    二、函数过程的定义和调用

    函数是过程的另一种形式,当子过程的执行返回一个值时,把它作为函数就比较简单。VB包含了很多内置的或内部的函数,用户在编写程序时,只需要写出一个函数名并给定参数就能得出函数值。当程序中需要多次用到某一公式或要调用它们,这样的函数称为用户定义函数。用户定义函数与内部函数一样,可以在程序中或函数嵌中使用。

    函数过程的定义

    (1)利用“工具”菜单下的“添加过程”敕令定义

    (2)利用代码窗口直接定义

    自定义函数过程的形式以下:

    [ Static][Public | Private ] Function 函数过程名([参数列表])[AS 类型]

    局部变量或常数定义

    语句块

    函数名=返回值

    [Exit Function]

    语句块

    函数名=返回值

    End Function

    函数过程的调用

    形式:函数过程名([参数列表])

    说明:在VB中调用FUNCTION过程的方法和调用任何内部函数的方法是一样的。还可以像调用SUB过程那样调用函数过程。

    例:已知直角三角形两直角边的值,计算第三边(斜边)的函数。

    Function nuse(a as interger, b as interger ) as single

         Nuse=sqr(a^2+b^2)

    End Function

    在VB中调用FUNCTION过程的方法:strx=nuse(width, Height)

    也可以用下面的语句调用了同一个函数过程:call nuse(3,6)     或     nuse 3,6

    举例:

    (1)设计计算圆面积的用户定义函数。

    (2)已知长和宽,计算矩形面积的函数。

    (3)设计求任意整数N的阶乘的函数,然后求3到10的阶乘之和。

    注:函数与过程的区别

    函数以FUNCTION开头,而过程以SUB开头

    当过程有一个返回值时,可以使用函数。当过程有多个返回值时,就当用过程。

    函数是通过函数名回送一个结果值。在函数的形式参数表后面要说明函数(即结果)的类型。而过程的结果由参数送回。

    函数体中至少要包罗一个给函数赋值的语句。而过程不能给过程名赋值。

    函数的调用出而今表达式中。而过程的调用必须作为一个单独的语句。

    形参没有具体的值,只代表了参数的个数、位置、类型;只能上简单变量,不能是常量、数组元素、表达式。

    三、参数传递

    在调用一个有参数的过程,首先举行的是“形实联合”,即按传值传递或按地址传递方式,实现调用程序和被调用的过程之间的数据传递。通过参数传递,Sub过程或Function过程就能根据不同的变量执行同种任务。为了叙述方便,将形式参数简称为形参,实在参数简称为实参。

    在Visual Basic中传递参数有两种方式,即按值传递(Passed by Value)和按地址传递(Passed by refecence)。按值传递参数时,传递的只是实参变量的副本。如果在被调过程中改变了形参值,只影响副本,而不会影响实参变量本身。即当掌握返回调用程序时,实参变量保持调用前的值不变。在定义过程时,若形参名前面没有关键字“ByVal”,即形参名前面缺省修饰词,或有“ByRef”关键字时,则指定了它是一个按地址传递的参数。按地址传递参数时,把实参变量(简单变量、数组元素、数组以记载等)的地址传送给被调过程。因此实参变量的地址和与之联合的形参地址是相同的,也就是说形参和实参共用内存的同一“地址”,即共享同一个存储单元。这样在被调过程中的形式参数值一旦被改变,相应的实参值也跟随着被改变了。

    l            形式参数与实际参数

    形式参数是指在定义通用过程时,出而今SUB或FUNCTION语句中的变量,是接收传送子过程的变量。形式参数表的各个变量之间用逗号分隔。实际参数是指在调用SUB或FUNCTION过程时,传送给SUB或FUNCTION过程的常量、变量或表达式。实参表可由常量、表达式、有效的变量名、数组名组成,实参表中各参数用逗号分隔。

    l            按值传递和按地址传递

    传递参数的方式有两种:如果CALL语句中的实际参数是常量或表达式,或者定义过程时选用ByVall关键字,就可以按值传递。如果CALL语句中的实际参数为变量,或者定义过程时选用ByRef关键字,就可以按地址传递。可则缺省按地址传递参数。

    (1)按值传递参数

    按地址传递参数时,传递的只是变量的副本。如果过程改变了这个值,则所作变量只影响副本而不会影响变量本身。当要求变量按值传送时,可以先把变量变成一个表达式,把变量转换成表达式的最简单的方法就是把它放在括号内。或者定义过程时用ByVal关键字指出参数是按值来传递的。例如:Sub Post (ByVal     num     as     Integer )

    例:运行下面给出的程序,理解按值传递参数。

    Private Sub Form_Click( )

         Dim a as intger, b as integer, c as integer

         A=5: b=3 : c=9

    Cls

    Print a; b; c

    Call prod( (a), (b), (c) )

    Print a; b; c

    End     Sub

    Sub prod (a as intger, b as integer, c as integer )

         Print a; b; c

    a=6 : b=8 : c=a*b

         print a; b; c

    (2)按地址传递参数

    按地址传参数,就是让过程根据变量的内存地址往接见实际变量的内容,即形式参数与实际参数使用相同的内存地址单元, 这样通过子过程就可以改变变量本身的值。系统缺省按地址传递参数。在传递调用时,实际参数必须是变量,常量或表达式无法传址。

    例:运行下面给出的程序,理解按地址传递参数。

    Private Sub Form_Click( )

         Dim a as intger, b as integer, c as integer

         A=5: b=3 : c=9

    Cls

    Print a; b; c

    Call prod( a, b, c )

    Print a; b; c

    End Sub

    Sub prod (x as intger, y as integer, z as integer )

         Print x; y; z

    x=6 : y=8 : z=x*y

         print x; y; z

    举例:

    Private Sub Form_Click( )

         Dim x as intger, y as integer

         X=8 : y=3

         Call test(5, x, y+1)                  ‘5传值,X传址, Y+1传值

    Print “主程序”,5, x, y

    End Sub

    Sub test (a as intger, b as integer, c as integer )

         Print “子程序”, a, b, c

         A=2: b=4: c=9

    End Sub

    四、过程的嵌套和递归调用

    1、过程的嵌套

    2、过程的递归调用

    递归调用是指一个过程直接或间接调用自己本身,即自己调用自己。VB的过程具有递归调用功能,递归调用在处理阶乘运算、级数运算、幂指数运算等方面出格有效。

    递归是一种十分有用的程序设计手艺。由于很多的数学模型和算法设计方法本来就递归的。用递归过程描述它们比用非递归方法简洁易读,可理解性好,算法的准确性证明也比较容易,因此读者应掌握递归程序设方法。递归过程是在过程定义中调用(或间接调用)本过程的过程。在递归调用中,一个过程执行的某一步要用到它自身的前面一步或前若干步的结果。

    举例:

    (1)利用递归调用,计算N!

    <DIV>
    1                                                N=0

    N*(N-1)!       N>0
    </DIV>



    fact=

         Static Funtion Fact (n) as Double

    If n>0 then

         Fact=n*fact (n-1)

    Else

         Fact=1

    End if

    End Function

    (2)编写程序打印菲波拉契(Fibonacci)数列

    <DIV>
    1                                                                                          n=1

    1                                                                                          n=2

    fibo(n-1)+fibo(n-2)             n>2
    </DIV>



    fibo=

    Private Funtion fibo (n) as Double

    If n=1 or n=2 then

         Fibo=1

    Else

         Fibo=fibo(n-1)+fibo(n-2)

    End if

    End Function

    五、变量的作用范围

    不同作用域的3种变量定义方式如表1所示:
    <DIV align=center>

    作用域

    局部变量

    模块级变量

    全局变量

    定义方式

    Dim,Static

    Dim,Private

    Public

    变量的定义位置

    过程之中

    模块的声明段中

    模块的声明段中

    能可被本模块中其它过程接见

    ×





    能可被其它模块接见

    ×

    ×


    </DIV>
    变量的作用范围不同时,变量的名字可以相同。变量的作用范围还可以出现交叉。一般来说,当变量名称相同而作用域不同时,局限性年夜的变量总会用“阴影”遮住局限性不太年夜的变量(即优先接见局限性年夜的变量)。例如,程序中有一个模块级变量Temp,还有一个名为Temp的过程级变量,则它的“阴影”会遮住模块级变量Temp。

    在一个过程内部用Dim语句定义的变量是局部变量,只有在定义它们的过程中才能接见或改变变量的值,这样的变量成为局部变量;为了使某个变量在整个模块的所有过程中都能使用,在模块的(通用)和(声明)部份使用Private或Dim语句定义的变量就是模块级变量,在该模块中任何过程都可以对模块级变量举行读、写操作;在模块的(通用)和(声明)部份使用Public语句定义的变量就是全局变量,在运用程序的任何部份都可以对全局变量举行读、写操作。

    使用Dim在过程中定义的变量,在过程结束后变量的值不能被保存下来。在每一次过程重新执行时,变量的内容将被清除。如果希望在离开该过程后,还能保存过程中局部变量的值,就应该使用Static关键字在过程中定义局部变量,即使过程结束,变量的值仍然保留着。

    Visual Basic程序的窗体模块、标准模块和类模块可以定义变量,在过程和函数中也可以定义变量。在不同部份定义的变量在程序中的实用范围是不同的。Visual Basic中的变量可以分为局部变量(过程级变量)、模块级变量和全局变量。

    过程级变量

    在一个过程内部声明变量时,只有该过程内部的代码才能接见或改变该变量的值。过程级变量的作用范围限制在该过程。在过程内部使用DIM或STATIC关键字声明变量。

    如果在过程中未作说明而直接使用某个变量,该变量也被当成过程级变量。用STATIC说明的变量在运用程序的整个运行过程中都一直存在,而用DIM说明的变量只在过程执行时存在,退出过程后,这类变量就会消失。过程变量通常用于保存临时数据。

    1、过程级变量

    在模块有声明中声明的变量属于模块级变量。模块级变量分为两种:私有和公有。

    (1)私有的模块变量

    私有的模块级变量在说明它的整个模块中的所有过程中都能使用,但其他模块却不能接见该变量。说明方法是在模块的声明中使用PRIVATE或DIM关键字声明变量。

    (2)公有的模块级变量

    公有的模块级变量在所有模块中的所有过程中都能使用。它的作用范围是整个运用程序,因此公有模块级变量属于全局变量。说明方法是在模块的声明中使用PUBLIC关键字声明。

    全程变量是指在所有程序(包罗主程序和过程)中都可以使用的内存变量。全程变量就像在一个过程中定义的变量一样,在子过程中可以任意改变和调用,当某子过程执行完后,其值带回主程序。

    2、变量的生存期

    (1)动态变量

    动态变量是指程序运行后进入变量所在的子程序,才分配该变量的内存单元,经过处理退出该过程,该变量占用的内存单元自动释放,其值消失,其内存能被其他变量占用。

           使用DIM关键字在过程中声明的局部变量,在过程执行结束后变量的值不被保留,在每一次重新执行过程时,变量重新声明。用DIM声明的变量属于动态变量。

    (2)静态变量

    静态变量是指程序运行进入该变量所在的子程序,修改变量的值后,退出该子程序,其值仍被保留,即变量所占内存单元没有释放。当以后再次进入该子程序,原来变量的值可以继续使用。

    使用STATIC关键字在过程中声明的局部变量,就属于静态变量。静态变量在过程退出后仍然可以保持原来的值。

    Function 过程是由用户定义的自力的函数过程,与Sub字程序类似。Function 函数过程可读取参数,修改语句。可作为自力的基本语句调用,也可以在程序或是函数中嵌套使用。它有返回值。Vb 中有很多内置的函数,如sin, cos, abs 等。如果过程需要多次用到某一公式或函数时,VB中有没有可用的参数,此时,Function过程就派上用场了。 Function 过程的语法为:

      [private | public ] [static] Function (函数名)([形参表])  [as(类型)]
      [语句列] [(函数名)= (表达式)]
      Exit gunction
      [语句列] [(函数名)=(表达式)]
      End function

    说明: 中括号内的可省略, Function 函数程序跟Sub 字程序过程类似。只是as (类型)表示Function的返回值是as 指向的类型。还有一种可以创建Function 过程, 在工具 添加过程, 在添加过程中的对话框中,名称由用户自定义,可以是字母、数字、下划线等。 在类型中选择函数选项,点击确定。OK! Function 函数过程创建完毕。

        在VB中function 程序如何运用?


    展开全文
  • VB-API函数使用手册

    2022-01-05 20:18:34
    VBA VB API函数使用手册,记录了VBADeclare function中的几乎所有接口函数格式为chm,开盖即用!
  • VB 函数用法 Free!!!方便VB开发初学与实用者!!
  • 求一个数的绝对值,调用function函数,带EXE文件和整个工程,适合初学者
  • vb.net Function使用

    2018-07-10 13:36:00
    Public Function colour(ByVal Code As Int16) As Color'顏色 Select Case Code Case 1 colour = Color.White'白色 Case 2 colour = Color.Yellow'黃色 ...

    Public Function colour(ByVal Code As Int16) As Color'顏色
    Select Case Code
    Case 1
    colour = Color.White'白色
    Case 2
    colour = Color.Yellow'黃色
    Case 3
    colour = Color.Red'紅色
    Case 4
    colour = Color.Silver'灰色
    End Select
    End Function

     

    Private Sub A1()

    TextBox1.BackColor = colour(1)'l背景色白

    TextBox1.BackColor = colour(2)'l背景色黃

    TextBox1.BackColor = colour(3)'l背景色紅

    TextBox1.BackColor = colour(4)'l背景色灰

    End Sub

     

    转载于:https://www.cnblogs.com/leme-chen/p/9288564.html

    展开全文
  • VB中调用API函数

    千次阅读 2020-10-13 09:53:58
    VB中调用API函数 API函数大多在windows/system32/user32文件夹的kernel等动态链接库文件,现在列举一个需要调用API函数的程序(本例程序使用的工具是VB)来简单介绍一下如何在程序调用API。 1、首先在VB中...

    在VB中调用API函数

     API函数大多在windows/system32/user32文件夹的kernel等动态链接库文件中,现在列举一个需要调用API函数的程序(本例程序使用的工具是VB)来简单介绍一下如何在程序中调用API。
    

    1、首先在VB中新建一个标准EXE的工程,如下图所示。
    在这里插入图片描述
    2、在控件工具条中拖放一个Label,将其属性名改为“修改系统时间”;拖放一个Frame,将其左上角的“Frame1”改为“修改时间”;依次拖放3个TextBox,将其Text设为空(即删掉Text1,Text2,Text3),并将(名称)依次改为Texthour,Textmin,Textsec(后面写代码需要用到);再依次拖放3个Label,将其属性名改为“时”、“分”、“秒”;拖放两个CommandButton,将其Caption属性改为“确定”和“取消”。Form1窗口设计如下图所示。
    在这里插入图片描述
    3、下面是Form1窗口对应的代码,在通用中声明GetSystemTime和SetSystemTime两个API函数。

    Option Explicit
    Private Declare Sub GetSystemTime Lib "kernel32" (lpTime As SYSTEMTIME)
    Private Declare Function SetSystemTime Lib "kernel32" (lpTime As SYSTEMTIME) As Long
    Private Type SYSTEMTIME
            wYear As Integer
            wMonth As Integer
            wDayOfWeek As Integer
            wDay As Integer
            wHour As Integer
            wMinute As Integer
            wSecond As Integer
            wMilliseconds As Integer
    End Type
    Dim time As SYSTEMTIME
    Private Sub Command1_Click()
    Dim hour As Integer
    hour = Texthour.Text - 8    '北京时间
    With time
        .wHour = IIf(hour > 0, hour, hour + 24)    '世界时间
        .wMinute = Textmin.Text
        .wSecond = Textsec.Text
    End With
    SetSystemTime time
    End Sub
    
    Private Sub Command2_Click()
    Unload Form1
    End Sub
    Private Sub Form_Load()
        GetSystemTime time
        With time
            Texthour.Text = .wHour + 8    '北京时间
            Textmin.Text = .wMinute
            Textsec.Text = .wSecond
        End With   
    End Sub
    

    在这里插入图片描述
    4、点击“运行 | 启动”后的结果如下图所示。
    在这里插入图片描述
    5、修改系统时间,如下图所示。
    在这里插入图片描述
    6、修改后发现系统时间已经更改,如下图所示。
    在这里插入图片描述
    说明:

    1、声明API函数的方法为:Declare Function (或Sub)API函数名称lib dll文件名(该dll中包含需要声明的API函数)(参数)。
    2、如本例中,SetSystemTime为声明的API函数名称,它所在的dll文件名为kernel,lib为固定语法结构,意思为lib前面的API函数包含在其后的dll文件中。现在声明SetSystemTime这个API函数的时候,就可以写成:Declare Function SetSystemTime Lib “kernel32” (lpTime As SYSTEMTIME) As Long。
    3、一般在写程序时,需要用到API函数,就必须对其声明。
    4、当声明成功后,就可以在窗口登录时通过GetSystemTime得到当前系统时间,再将其赋予3个文本框(分别代表时、分、秒)。在“确定”按钮事件中,将3个文本框中的数据通过SetSystemTime函数赋予系统。
    5、通过本例子说明一下声明API函数的方法以及如何调用API函数,对API函数及其使用方法有个初步的了解,要想深入学习API函数,还需要更多时间做些实验,在实验中不断提高对API函数掌握的熟练程度。

    展开全文
  • VB中声明API函数有两种方法:如果我们只在某个窗体使用API函数,我们可以在窗体代码的General部分声明它: 声明的语法是: Private Declare Function ... Private Declare Sub..... 这里必须采用Private声明...
  • vb.net函数返回数组

    千次阅读 2018-10-18 17:11:13
    今天写了一个程序需要函数返回数组,看了别的网友的程序发现有bug,特此... Private Function Fun_Fp32ToByte(ByVal fp32 As Single) As Byte() Dim byt(3) As Byte byt = System.BitConverter.GetBytes(fp32) ...
  • VB中Sub过程与Function过程的区别

    千次阅读 2020-01-14 13:39:58
    VB的通用过程分为两种类型:Sub过程和Function过程。通用过程既可以保存在窗体模块(.Frm),也可以保存在标准模块(.Bas)。通用过程与事件过程不同,它不依附于某一对象,也不是有对象的某一事件驱动或由系统...
  • VB6.0常用基本函数库,共有27个,如你正在学习VB开发,也许用得到,建议下载收藏。 部分源代码示例: ' On Top Sub Declaration Public Declare Sub SetWindowPos Lib _ "user32" (ByVal hWnd _ As Integer, ByVal...
  • VB自带:Atn ArcSin: Function ArcSin(X As Doule) As Double Dim Temp As Double If X = 0 Then Temp=0 Else Temp = Atn(X/Sqr(1-X*X)) End If ArcSin=Temp End Function ArcCos: Function ArcCos(X As ...
  • 今天用了一下RasEnumConnections函数,发现MSDN上的例子是错误的。 MSDN上RasEnumConnections的文档是这么说的: 复制代码 代码如下: To determine the required buffer size, call RasEnumConnections with ...
  • VS2010中VB.NETAPI函数的调用

    千次阅读 2015-12-20 14:29:41
    Declare Function publicname Lib "libname" [Alias "alias"]   [([[ByVal] variable [As type]   [,[ByVal] variable [As type]]...])] As Type  其中 function表示有返回值,也可
  • VB 调用API函数设计关于窗体,看第一眼,我还以为是调用Windows系统的关于窗口,仔细看,定义了自己的信息,这个例子可看作是VB使用API函数的例子,了解一些用法,关于本例子的API用法,可看以下代码:  API函数...
  • vb函数全解

    2012-10-18 10:36:39
    vb函数全解 Abs 函数 返回数的绝对值。 And 运算符 执行两个表达式的逻辑连接。 Array 函数 返回含一数组的 变体 。 Asc 函数 返回字符串首字母的 ANSI 字符代码。 赋值运算符 (=) 给变量或属性赋值。 Atn 函数...
  • VB中常用的函数(一)

    千次阅读 热门讨论 2017-12-22 21:03:08
    前言学习VB很长时间了,有些函数虽然很简单,但是记得还不是很清楚,所以干脆在总结一次。Msgbox函数 这些不同的弹出的提示框,就是我们常用的msgbox函数,Message Box的简写。语法:MsgBox (Prompt [,Buttons] [,...
  •  m As Integer m = a(1) For i = 1 To n If m < a(i) Then m = a(i) Next MaxNum = m End Function Function MinNum(a() As Integer, n) As Integer Dim i As Integer, m As ...
  • VB基本函数大全

    万次阅读 多人点赞 2018-01-15 17:18:05
    Abs 函数: 返回数的绝对值。  And 运算符: 执行两个表达式的逻辑连接。  Array 函数: 返回含一数组的变体 ...调用语句 将控制移交 Sub 或 Function 过程。  CBool 函数: 返回已被转换为 Boo
  • VB中API函数的调用

    千次阅读 2015-07-28 09:53:18
    1、API函数  API的英文全称(Application Programming Interface),WIN32 API也就是MicrosoftWindows32位平台的应用程序编程接口,在window操作系统盛行的期间,程序员主要是利用API函数来开发Windows平台下的应用...
  • VB中Exit For与Exit Function

    千次阅读 2019-02-18 09:13:53
    1.Exit for 为直接退出循环,例如编写程序 for i= 1 to 5 ...2.Exit Function 在调用函数过程时,function返回的是一个结果,例如编写一个函数过程suv, For i=1 to 5 if n=i then suv=n exit f...
  • 请问vb调用函数中加上一个判断提前结束函数并且把另一个函数作为继续传入调用怎么实现?函数退出以后返回值采用新的函数怎么实现?
  • vb6.0的Private Declare Function的含义

    千次阅读 2020-04-14 10:46:16
    一、Private Declare Function 用于在VB中声明API函数。 (1)Private表示声明的函数只能用于当前窗口或模块,如果改成Public,则可以用于当前VB工程的所有窗口或模块(用Public声明时,需要放在某个模块); ...
  • VB调用API函数

    万次阅读 多人点赞 2016-01-13 20:17:36
    API函数快速入门--怎样在VB中声明和使用API函数--     一、在VB中声明API函数有两种方法:如果我们只在某个窗体使用API函数,我们可以在窗体代码的 General部分声明它:    声明的语法是:  Private ...
  • 怎么编写function函数,调用的时候就可以直接由不同的(n,d)计算然后同时返回x,y的值呢??? 我现在刚开始应用VB,跪求大神指点~~~比较着急,在线等回复,谢谢了! 要是能直接发一段代码附上注释就再好...
  • VB中Split函数的作用和用法(字符串用逗号分割) VB中Split函数的作用和用法(字符串用逗号分割) 示例: Function testSplit() Dim a As String a = "1,2,3,4,dsd-ad5,6,45,656465,564,45" Dim b() As...
  • VB之Val()函数的使用

    千次阅读 2019-10-08 09:28:57
    VB中,也许你或多或少会希望得到的数据转换成数字类型,数字类型既可以是整形,单精度,双精度,浮点数,只要是数字类型这个都可以使用,不过此函数只返回字符串包含的数字,若第一个字符为字母或者非数字字符,...
  • VB6 时间戳函数

    千次阅读 2019-06-29 14:53:46
    Public Function TimeStampFromDate(Optional TimeStamp As Date, Optional TimeZone As Long = TimeZone_China) As Long Dim DateTimeStamp As Date If TimeStamp > TimeStamp_Max Or TimeStamp DateTimeStamp ...
  • 在 VBA使用"DateSerial"函数,其结果是一个数字串。如果用于 Excel worksheet 的Cell 其值可以直接显示为 【43880.620532407】,暨带小数的数字。这样在早期的VBA编程就有很多这样的语句用于计算。 例如:日期...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 28,812
精华内容 11,524
关键字:

vb中function函数格式