VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > VB.net教程 >
  • VB 函数 CallByName 的一些用法 (函数动态调用,回调函数)

作者:whchensir
转载自
https://blog.csdn.net/whchensir/article/details/22823421?utm_medium=distribute.pc_relevant_download.none-task-blog-baidujs-2.nonecase&depth_1-utm_source=distribute.pc_relevant_download.none-task-blog-baidujs-2.nonecase

VB  函数  CallByName (函数动态调用,回调函数) 的一些用法

  最近编程,要用到函数指针来动态地调用函数,在C 语言里很容易实现,用函数指针就行了。

  VB里就没有这么方便了,查阅相关资料,讲起来均很复杂,也不容易明白,其中采用CallByName (函数动态调用,回调函数)是最方便的方法。

  将之归纳为几个例子,应用方法就一目了然了。

 

 


  1.  
    Private Sub Command2_Click()
  2.  
    Dim Args(1) As String
  3.  
     
  4.  
    Args(0) = "0a"
  5.  
    Args(1) = "1b"
  6.  
     
  7.  
    CallByName Me, "SubBy1", VbMethod, "00aa", "11bb"
  8.  
    Form1.Label1 = (CallByName(Me, "FunBy2", VbMethod, Args(0), Args(1)))
  9.  
     
  10.  
    CallByName Text1, "Text", VbLet, "New Text" '设置属性
    Text1.Text = " rst=" + CallByName(Text1, "Text", VbGet)  '读属性
    CallByName Text1, "Move", VbMethod, 100, 100, 2000, 500    'move方法

  1.  
    End Sub
  2.  
    Sub SubBy1(s1 As String, s2 As String)
  3.  
    Debug.Print s1 + " Sub1 " + s2
  4.  
    End Sub
  5.  
    Function FunBy2(s1 As String, s2 As String) As String
  6.  
    FunBy2 = "Test2 : " + s1 + " Fun 2 " + s2
  7.  
    End Function

  1.  

     

  2.  
     
  3.  
     
  4.  

     

  5.  

     

  6.  
     
  7.  

     

  8.  

     

  9.  
    附:
  10.  

     

  11.  

     

  12.  
    Visual Basic 语言参考
  13.  

     

  14.  

     

  15.  
     
  16.  
    CallByName 函数
  17.  
     
  18.  
    执行对象的方法,或者设置或返回对象的属性。
  19.  
     
  20.  
    Public Function CallByName( _
  21.  
       ByVal ObjectRef As System.Object, _
  22.  
       ByVal ProcName As String, _
  23.  
       ByVal UseCallType As CallType, _
  24.  
       ByVal Args() As Object _
  25.  
    ) As Object
  26.  
    参数
  27.  
    ObjectRef
  28.  
    必选。Object。指向公开属性或方法的对象的指针。
  29.  
     
  30.  
    ProcName
  31.  
    必选。String。包含对象的属性名或方法名的字符串表达式。
  32.  
     
  33.  
    UseCallType
  34.  
    必选。CallType 枚举类型的枚举成员,表示所调用过程的类型。CallType 的值可以是 Method、Get 或 Set。
  35.  
     
  36.  
    Args
  37.  
    可选。ParamArray。参数数组,包含要传递给所调用的属性和方法的参数。
  38.  
     
  39.  

相关教程