十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
SetWindowLong是API函數(shù),

創(chuàng)新互聯(lián)建站是一家網(wǎng)站設(shè)計(jì)公司,集創(chuàng)意、互聯(lián)網(wǎng)應(yīng)用、軟件技術(shù)為一體的創(chuàng)意網(wǎng)站建設(shè)服務(wù)商,主營產(chǎn)品:響應(yīng)式網(wǎng)站建設(shè)、高端網(wǎng)站設(shè)計(jì)、成都營銷網(wǎng)站建設(shè)。我們專注企業(yè)品牌在網(wǎng)站中的整體樹立,網(wǎng)絡(luò)互動(dòng)的體驗(yàn),以及在手機(jī)等移動(dòng)端的優(yōu)質(zhì)呈現(xiàn)。網(wǎng)站建設(shè)、成都做網(wǎng)站、移動(dòng)互聯(lián)產(chǎn)品、網(wǎng)絡(luò)運(yùn)營、VI設(shè)計(jì)、云產(chǎn)品.運(yùn)維為核心業(yè)務(wù)。為用戶提供一站式解決方案,我們深知市場的競爭激烈,認(rèn)真對(duì)待每位客戶,為客戶提供賞析悅目的作品,網(wǎng)站的價(jià)值服務(wù)。
將以下
Declare
函數(shù)添加到項(xiàng)目啟動(dòng)窗體的聲明部分,或是添加到要使用
DLL
的類或模塊的聲明部分中:
Declare
Auto
Function
SetWindowLong
Lib
"user32"
Alias
"SetWindowLongA"
(ByVal
hwnd
As
Long,
ByVal
nIndex
As
Long,
ByVal
dwNewLong
As
Long)
As
Long
之后就可以調(diào)用這個(gè)函數(shù)了。
軟糖來回答羅。
“調(diào)用事件”有歧義,你的意思是不是下面兩種:
調(diào)用事件處理方法
直接調(diào)用對(duì)象名.方法名
'例如有這樣一個(gè)按鈕點(diǎn)擊事件處理程序
Private?Sub?Button1_Click(sender?As?Object,?e?As?EventArgs)?Handles?Button1.Click
秒表.Start()
End?Sub
'調(diào)用它直接用
Button1_Click(me,?new?EventArgs())
引發(fā)事件
Button1.Click.Invoke(me,?new?EventArgs())
另外?RaiseEvent 也可以引發(fā)事件,但不能使用 RaiseEvent?來引發(fā)派生窗體的控件事件,只有自己定義的類的事件才能用它引發(fā)。
如滿意,請(qǐng)采納,謝謝。
一、帶窗體的dll創(chuàng)建
1、先新建 類庫(testdll),在項(xiàng)目中添加兩個(gè)窗體form1(主窗體)、form2,為了與后面的調(diào)用區(qū)分分別命名為fm1,fm2;并在fm1窗體中添加一個(gè)按鈕用來調(diào)用fm2如下圖
2、在fm1窗體代碼中先引用fm2, ? ?按鈕代碼調(diào)用fm2.如圖
3、生成dll,(class1.vb中不需要寫任何代碼)
二、調(diào)用dll
1、新建 一個(gè)windows應(yīng)用程序并添加一個(gè)按鈕用來調(diào)用dll中的窗體,選 擇 “項(xiàng)目”-“添加引用”,選擇剛才創(chuàng)建的testdll
2、窗體代碼中先引用testdll,再定義一個(gè)testdll中的fm1對(duì)象,最后執(zhí)行對(duì)象的show方法
3、運(yùn)行結(jié)果如下:
.net 里面 項(xiàng)目-添加引用-瀏覽-找到你的dll 然后到對(duì)像瀏覽器里查看就可以,這是第一種,第二種不會(huì)。
1.用Win32 API PlaySound
PlaySound位于"winmm.dll"中,可以根據(jù)輸入?yún)?shù)的不同,播放WAV類型的音樂。在VB.NET中調(diào)用跟VB6中差不多:
先聲明:
Private Declare Auto Function PlaySound Lib "winmm.dll" (ByVal lpszSoundName As String, ByVal hModule As Integer, ByVal dwFlags As Integer) As Integer
Const SND_FILENAME As Integer = H20000
Const SND_ALIAS As Integer = H10000
Const SND_SYNC As Integer = H0
具體還有很多常量,不一一列舉,下面是播放一個(gè)wav文件的例子
Dim mstrfileName As String = "c:\eagle2.wav"
PlaySound(mstrfileName, 0, SND_FILENAME)
注意上面的播放是非同步的,就是說它并不會(huì)播放完畢才結(jié)束。如果把上面的代碼寫在一個(gè)Button.Click的事件處理程序中,第二次點(diǎn)擊的時(shí)候它會(huì)打斷第一次的播放,重新開始。
當(dāng)然我們也可以調(diào)用系統(tǒng)的聲音:
PlaySound("SystemStart", 0, SND_ALIAS Or SND_SYNC)
' 以同步的方式調(diào)用系統(tǒng)啟動(dòng)時(shí)候的聲音。
2. 調(diào)用媒體播放器控件
VB.NET中并沒有提供媒體播放器的.NET組件,沒辦法我們還是調(diào)用以前Com組件Windows Media Player。當(dāng)然除了聲音外,還可以播放視頻文件。
首先把媒體播放器控件加到工具欄中,調(diào)用還是簡單的寫一下吧:)
Private Sub playMediaFile(ByVal mediaFileName As String)
With MediaPlayer1
.Stop()
.FileName = "c:\mp3\愛不愛我.mp3"
.Play()
End With
End Sub
沒什么區(qū)別,只是增加可讀性而已,以下是摘自MSDN的說明:
Visual Basic 語言參考
Call 語句 (Visual Basic)
將控制傳送到 Function、Sub 或動(dòng)態(tài)鏈接庫 (DLL) 過程。
[ Call ] procedureName [ (argumentList) ]
各部分說明
procedureName
必選。要調(diào)用的過程名。
argumentList
可選。變量和表達(dá)式列表,表示當(dāng)調(diào)用過程時(shí)傳遞給該過程的參數(shù)。多個(gè)參數(shù)以逗號(hào)分隔。如果包括 argumentList,則必須將它放在括號(hào)內(nèi)。
備注
您通常使用 Call 語句調(diào)用不返回值的過程。如果該過程返回值,Call 語句將放棄該值。
在調(diào)用過程時(shí)不要求您必須使用 Call 語句,但使用該語句可以提高代碼的可讀性。