1. Shared Function System.Runtime.
創(chuàng)新互聯(lián)是一家專注于成都做網(wǎng)站、網(wǎng)站建設(shè)與策劃設(shè)計(jì),新沂網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:新沂等地區(qū)。新沂做網(wǎng)站價(jià)格咨詢:18980820575
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位數(shù)據(jù)替代了long(long是64位)
System是Net語言中的一個(gè)族,System.Runtime.InteropServices是system中的一個(gè)類。System.Runtime.InteropServices.DLLimpor是其中的一個(gè)方法。調(diào)用DLL的API
接口,這個(gè)的意思就是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
你可以這樣調(diào)用 classA.MessageboxA 但是如果沒有這個(gè)share 在class后打點(diǎn)就沒有MessageboxA的成員出現(xiàn)了 ,現(xiàn)在你就象以前一樣的使用他吧。
其實(shí)上面這個(gè)VB.NET函數(shù)調(diào)用方法并不正確,我們?nèi)耘f要使用API聲明,只是換了一各形式
如果你認(rèn)為這就是VB.NET就錯(cuò)了,看看這個(gè):
system.WinForms.MessageBox.Show("對(duì)話內(nèi)容寫在這里", "標(biāo)題寫在這里", messagebox.OK BitOr messagebox.IconAsterisk)
這就是面向?qū)ο螅阋呀?jīng)完成了所有的任務(wù)。不需要任何的API聲明。不需要寫多余的代碼。
1. messagebox.IconAsterisk=驚嘆號(hào)圖標(biāo)
2. messagebox.IconError=錯(cuò)誤圖標(biāo)
3. messagebox.IconExclamation=警告圖標(biāo)
4. messagebox.IconHand=錯(cuò)誤圖標(biāo)
5. messagebox.IconInformation=提示圖標(biāo)
所經(jīng)點(diǎn)NET就是打點(diǎn)到達(dá),在族后面打點(diǎn),在類后面打點(diǎn),在對(duì)象后面打點(diǎn)。第二個(gè)問題就是類與類之間相互的關(guān)系,Net在網(wǎng)上處理人與人的關(guān)系,在程序語言中處理類與類的關(guān)系。倒底是加不加share,倒底是類后面打點(diǎn),還是Dim成一個(gè)對(duì)象(把他當(dāng)一個(gè)變量吧)再說,是等于class,還是New class.是dim xxx as class=new class 還是dim xxx as new class
就是這樣VB.NET函數(shù)調(diào)用將更簡單,不須要研究一些很難的東西。
如上面所說,你可能還不太了解類、函數(shù)等的作用。
類可以用來封裝一系列操作,或者是一類對(duì)象的特性。像上面的描述,有可能是濫用類了。
建議你這樣,弄一個(gè)專門的運(yùn)算類,里面有四個(gè)運(yùn)算的函數(shù),比如:
Class 運(yùn)算
Shared Function 加(ByVal 加數(shù)1 As Decimal, ByVal 加數(shù)2 As Decimal) As Decimal
'舉個(gè)例子
Return 加數(shù)1 + 加數(shù)2 '百度打不出英文加號(hào),你自己改一下
Exit Function
End Function
Shared Function 減(ByVal 被減數(shù) As Decimal, ByVal 減數(shù) As Decimal) As Decimal
'舉個(gè)例子
Return 被減數(shù) - 減數(shù)
Exit Function
End Function
End Class
上面我寫了兩個(gè)例子,你可以照抄然后自己寫乘除的,總之不要濫用類就行。
PS:Shared函數(shù)的使用不需要類被實(shí)例化,可以直接這樣使用:
Msgbox(運(yùn)算.加(1,2).ToString)
你會(huì)發(fā)現(xiàn)“運(yùn)算”是藍(lán)色的
指針是c語言的概念,VB、VB.NET沒有指針,除了指針以外也很少有人能玩到你的編程深度,關(guān)鍵看不懂呢。
???就是子程序的名稱,比如每次點(diǎn)擊c后就自動(dòng)調(diào)動(dòng)相對(duì)應(yīng)的子程序,如子程序是
Private Sub my_do ()
........
End Sub
相應(yīng)的AddHandler c.Click, AddressOf my_do
實(shí)際上是個(gè)委托
可以像這樣,返回變量的值。
Visual Basic code
Public Function number() As Single '你在這已經(jīng)設(shè)置了函數(shù)返回值的類型
Dim nJTTZ As Single = 1
return nJTTZ '返回變量的值
End Function
Public Function Index() As Single
Dim zJTTZ As Single = 1
return zJTTZ
End Function
Public Overloads Function CalcAmount() As Boolean
AddItemRow("", "第一部分:靜態(tài)投資", "正線公里", number(), Index()) ‘調(diào)用函數(shù)即得到返回的變量值。
End Function