新聞中心
各們,請(qǐng)教怎么使用vb.net編寫兩個(gè)進(jìn)程間消息
兩個(gè)方法
成都創(chuàng)新互聯(lián)是一家專注于網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)和西云機(jī)房的網(wǎng)絡(luò)公司,有著豐富的建站經(jīng)驗(yàn)和案例。
1.
要接收的窗口先使用FindWindow這個(gè)api獲得句柄
調(diào)用SetForegroundWindow使其獲得焦點(diǎn)并選中
調(diào)用.net方法:SendKeys.Send方法發(fā)送
2.使用API的SendInput
vb.net中SendMessager的問題
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As String, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String) As Long
改為
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As String, ByVal wMsg As integer, ByVal wParam As integer , ByVal lParam As String) As integer
再試試,
可能你的聲明使用vb6。0 復(fù)制過來的,long 全部改成integer
請(qǐng)問:VB 里面的MessageBox要怎么用,整個(gè)函數(shù)是什么樣的?
MessageBox是.Net的類
你說的是Msgbox?
MsgBox 函數(shù)
在對(duì)話框中顯示消息,等待用戶單擊按鈕,并返回一個(gè) Integer 告訴用戶單擊哪一個(gè)按鈕。
語(yǔ)法
MsgBox(prompt[, buttons] [, title] [, helpfile, context])
MsgBox 函數(shù)的語(yǔ)法具有以下幾個(gè)命名參數(shù):
部分 描述
Prompt 必需的。字符串表達(dá)式,作為顯示在對(duì)話框中的消息。prompt 的最大長(zhǎng)度大約為 1024 個(gè)字符,由所用字符的寬度決定。如果 prompt 的內(nèi)容超過一行,則可以在每一行之間用回車符 (Chr(13))、換行符 (Chr(10)) 或是回車與換行符的組合 (Chr(13) Chr(10)) 將各行分隔開來。
Buttons 可選的。數(shù)值表達(dá)式是值的總和,指定顯示按鈕的數(shù)目及形式,使用的圖標(biāo)樣式,缺省按鈕是什么以及消息框的強(qiáng)制回應(yīng)等。如果省略,則 buttons 的缺省值為 0。
Title 可選的。在對(duì)話框標(biāo)題欄中顯示的字符串表達(dá)式。如果省略 title,則將應(yīng)用程序名放在標(biāo)題欄中。
Helpfile 可選的。字符串表達(dá)式,識(shí)別用來向?qū)υ捒蛱峁┥舷挛南嚓P(guān)幫助的幫助文件。如果提供了 helpfile,則也必須提供 context。
Context 可選的。數(shù)值表達(dá)式,由幫助文件的作者指定給適當(dāng)?shù)膸椭黝}的幫助上下文編號(hào)。如果提供了 context,則也必須提供 helpfile。
設(shè)置值
buttons 參數(shù)有下列設(shè)置值:
常數(shù) 值 描述
vbOKOnly 0 只顯示 OK 按鈕。
VbOKCancel 1 顯示 OK 及 Cancel 按鈕。
VbAbortRetryIgnore 2 顯示 Abort、Retry 及 Ignore 按鈕。
VbYesNoCancel 3 顯示 Yes、No 及 Cancel 按鈕。
VbYesNo 4 顯示 Yes 及 No 按鈕。
VbRetryCancel 5 顯示 Retry 及 Cancel 按鈕。
VbCritical 16 顯示 Critical Message 圖標(biāo)。
VbQuestion 32 顯示 Warning Query 圖標(biāo)。
VbExclamation 48 顯示 Warning Message 圖標(biāo)。
VbInformation 64 顯示 Information Message 圖標(biāo)。
vbDefaultButton1 0 第一個(gè)按鈕是缺省值。
vbDefaultButton2 256 第二個(gè)按鈕是缺省值。
vbDefaultButton3 512 第三個(gè)按鈕是缺省值。
vbDefaultButton4 768 第四個(gè)按鈕是缺省值。
vbApplicationModal 0 應(yīng)用程序強(qiáng)制返回;應(yīng)用程序一直被掛起,直到用戶對(duì)消息框作出響應(yīng)才繼續(xù)工作。
vbSystemModal 4096 系統(tǒng)強(qiáng)制返回;全部應(yīng)用程序都被掛起,直到用戶對(duì)消息框作出響應(yīng)才繼續(xù)工作。
vbMsgBoxHelpButton 16384 將Help按鈕添加到消息框
VbMsgBoxSetForeground 65536 指定消息框窗口作為前景窗口
vbMsgBoxRight 524288 文本為右對(duì)齊
vbMsgBoxRtlReading 1048576 指定文本應(yīng)為在希伯來和阿拉伯語(yǔ)系統(tǒng)中的從右到左顯示
第一組值 (0–5) 描述了對(duì)話框中顯示的按鈕的類型與數(shù)目;第二組值 (16, 32, 48, 64) 描述了圖標(biāo)的樣式;第三組值 (0, 256, 512) 說明哪一個(gè)按鈕是缺省值;而第四組值 (0, 4096) 則決定消息框的強(qiáng)制返回性。將這些數(shù)字相加以生成 buttons 參數(shù)值的時(shí)候,只能由每組值取用一個(gè)數(shù)字。
注意 這些常數(shù)都是 Visual Basic for Applications (VBA) 指定的。結(jié)果,可以在程序代碼中到處使用這些常數(shù)名稱,而不必使用實(shí)際數(shù)值。
返回值
常數(shù) 值 描述
vbOK 1 OK
vbCancel 2 Cancel
vbAbort 3 Abort
vbRetry 4 Retry
vbIgnore 5 Ignore
vbYes 6 Yes
vbNo 7 No
說明
在提供了 helpfile 與 context 的時(shí)候,用戶可以按 F1(Windows) or HELP (Macintosh) 來查看與 context 相應(yīng)的幫助主題。像 Microsoft Excel 這樣一些主應(yīng)用程序也會(huì)在對(duì)話框中自動(dòng)添加一個(gè) Help 按鈕。
如果對(duì)話框顯示 Cancel 按鈕,則按下 ESC 鍵與單擊 Cancel 按鈕的效果相同。如果對(duì)話框中有 Help 按鈕,則對(duì)話框中提供有上下文相關(guān)的幫助。但是,直到其它按鈕中有一個(gè)被單擊之前,都不會(huì)返回任何值。
注意 如果還要指定第一個(gè)命名參數(shù)以外的參數(shù),則必須在表達(dá)式中使用 MsgBox。為了省略某些位置參數(shù),必須加入相應(yīng)的逗號(hào)分界符。
VB.NET中msgbox()和messagebox.show()功能上是一樣的嗎?
2個(gè)函數(shù)的參數(shù)不一樣 msgbox是vb6的 messagebox.show是vb.net的 基本功能都是一樣的
vb.net可能就多一個(gè)文本的排列方式 左右對(duì)齊 msgbox 沒有
請(qǐng)教下vb.net 什么時(shí)候用事件,raiseevent和直接調(diào)用函數(shù)有多大區(qū)別,謝謝
raiseevent
在合適的地方或時(shí)機(jī)觸發(fā)事件,以執(zhí)行已與該事件綁定的所有函數(shù)。
事件一旦被觸發(fā),將執(zhí)行所有與該事件有關(guān)的函數(shù),同一個(gè)事件執(zhí)行的函數(shù)代碼可以完全不同,開發(fā)者可以通過一個(gè)事件去做不同的事情。
——
開發(fā)一個(gè)按鈕類,并定義好一個(gè)點(diǎn)擊事件,通過用戶點(diǎn)擊按鈕類來觸發(fā)事件,最后創(chuàng)建兩個(gè)按鈕的實(shí)例:按鈕1和按鈕2。
點(diǎn)擊按鈕1,點(diǎn)擊事件執(zhí)行彈出一個(gè)消息框的代碼。
點(diǎn)擊按鈕2,點(diǎn)擊事件執(zhí)行打開一個(gè)文件的代碼。
若點(diǎn)擊按鈕不觸發(fā)事件,而是執(zhí)行某一定義好的函數(shù)paly,在點(diǎn)擊后,按鈕1和按鈕2將只能執(zhí)行相同的函數(shù)play。
淺見,通過一個(gè)事件可以做不同的事情,通過一個(gè)函數(shù)只可以做該函數(shù)規(guī)定的事情,除非每次都去修改函數(shù),如果擁有該事件的類\控件是別人開發(fā)的,在別人沒有提供源代碼的情況之下,那根本不可能修改。
vb.net 句柄發(fā)送消息
Private?Const?WM_SETTEXT?=?HC
Private?Declare?Function?SendMessage?Lib?"user32"?Alias?"SendMessageA"?(ByVal?hwnd?As?IntPtr,?ByVal?wMsg?As?Integer,?ByVal?wParam?As?Integer,?ByVal?lParam?As?System.Text.StringBuilder)?As?Integer
Private?Sub?Button1_Click(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button1.Click
Dim?s?As?String?=?"王小明"
Dim?build?As?New?System.Text.StringBuilder(s.Length)
build.Append(s)
SendMessage(TextBox1.Handle,?WM_SETTEXT,?0,?build)
End?Sub
新聞標(biāo)題:vb.net消息函數(shù) VB常用函數(shù)
文章鏈接:http://biofuelwatch.net/article/doccgdc.html