vb.net类的调用 vbnet class

vb.net 调用其他文件 如 dll

DLL(动态链接库)是一个很有用的东西,在开发大项目的时候显得非常重要,因为多人合作开发时,可以给每个人分配一个任务,用DLL完成,最后组合起来,就不会出现互相冲突的问题。这里给出最简单的DLL编写与调用的示例

专注于为中小企业提供做网站、成都网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业长葛免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了成百上千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

首先,我们打开VB.NET,选择类库,名称改为test

然后输入以下代码

Public Class test

Public Function test(ByVal a As Long, ByVal b As Long) As Long

Return a + b

End Function

End Class

保存后,生成DLL文件。

这就是最简单的一个DLL,下面是调用该DLL的示例

新建一个工程,单击“项目” -- 添加引用

找到刚才生成的DLL,双击它

添加引用以后,似乎什么也没发生,这时我们输入以下代码:

Imports test.test

这样,就包含了该DLL的类。

然后我们定义一个类

Dim test As New test.test

这样,就可以使用里面的函数了,下面是程序示例

Imports test.test

Public Class Form1

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim test As New test.test

MsgBox(test.test(1, 2))

End Sub

End Class

运行该程序,可以看到,调用了DLL内的函数。

这就是最简单的DLL示例,可以将一些复杂的代码集成到DLL里,以后升级或重用都比较方便。

VB.net关于类之间函数的调用问题。

如上面所说,你可能还不太了解类、函数等的作用。

类可以用来封装一系列操作,或者是一类对象的特性。像上面的描述,有可能是滥用类了。

建议你这样,弄一个专门的运算类,里面有四个运算的函数,比如:

Class 运算

Shared Function 加(ByVal 加数1 As Decimal, ByVal 加数2 As Decimal) As Decimal

'举个例子

Return 加数1 + 加数2 '百度打不出英文加号,你自己改一下

Exit Function

End Function

Shared Function 减(ByVal 被减数 As Decimal, ByVal 减数 As Decimal) As Decimal

'举个例子

Return 被减数 - 减数

Exit Function

End Function

End Class

上面我写了两个例子,你可以照抄然后自己写乘除的,总之不要滥用类就行。

PS:Shared函数的使用不需要类被实例化,可以直接这样使用:

Msgbox(运算.加(1,2).ToString)

你会发现“运算”是蓝色的

如何正确理解VB.NET函数调用

1. Shared Function System.Runtime.

InteropServices.DLLimport("user32.dll")

2. MessageBoxA(ByVal hwnd As Integer,

ByVal text As String, ByVal

lpcaption As String, ByVal

wtype As Integer) As Integer

3. End Function

首先integer被作为32位数据替代了long(long是64位)

System是Net语言中的一个族,System.Runtime.InteropServices是system中的一个类。System.Runtime.InteropServices.DLLimpor是其中的一个方法。调用DLL的API

接口,这个的意思就是vb6的lib"user32", share是共享的意思,例如:

1. Public Class classA

2. Shared Function System.Runtime.

InteropServices.DLLimport("user32.dll")

MessageBoxA(ByVal h As Integer,

ByVal m As String, ByVal c As

String, ByVal type As Integer) As Integer

3. End Function

4. End Class

你可以这样调用 classA.MessageboxA 但是如果没有这个share 在class后打点就没有MessageboxA的成员出现了 ,现在你就象以前一样的使用他吧。

其实上面这个VB.NET函数调用方法并不正确,我们仍旧要使用API声明,只是换了一各形式

如果你认为这就是VB.NET就错了,看看这个:

system.WinForms.MessageBox.Show("对话内容写在这里", "标题写在这里", messagebox.OK BitOr messagebox.IconAsterisk)

这就是面向对象,你已经完成了所有的任务。不需要任何的API声明。不需要写多余的代码。

1. messagebox.IconAsterisk=惊叹号图标

2. messagebox.IconError=错误图标

3. messagebox.IconExclamation=警告图标

4. messagebox.IconHand=错误图标

5. messagebox.IconInformation=提示图标

所经点NET就是打点到达,在族后面打点,在类后面打点,在对象后面打点。第二个问题就是类与类之间相互的关系,Net在网上处理人与人的关系,在程序语言中处理类与类的关系。倒底是加不加share,倒底是类后面打点,还是Dim成一个对象(把他当一个变量吧)再说,是等于class,还是New class.是dim xxx as class=new class 还是dim xxx as new class

就是这样VB.NET函数调用将更简单,不须要研究一些很难的东西。


网站名称:vb.net类的调用 vbnet class
文章网址:http://myzitong.com/article/doiiocp.html