第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

您好,關(guān)于C# sendmessage的詳解,求助!

您好,關(guān)于C# sendmessage的詳解,求助!

C C#
慕俠2389804 2021-11-11 11:07:56
sendmessage有幾個參數(shù) 用來發(fā)鍵盤消息 鼠標(biāo)消息,我現(xiàn)在不太明白的有這些虛擬鍵值、按下松開、怎么區(qū)分是鍵盤還是鼠標(biāo)、數(shù)字跟字母按鍵是不是不僅僅是鍵值的差別 還是有其他參數(shù)的區(qū)別,暫且拋開組合鍵, 實際點(diǎn)說是幫我搞定幾個發(fā)送數(shù)字鍵,發(fā)送字母鍵,發(fā)送左鍵,右鍵,當(dāng)然這個都包括按下和松開,另外///模擬鼠標(biāo)左鍵點(diǎn)擊 x表示橫坐標(biāo),y表示縱坐標(biāo)public void SendMsg(IntPtr hWnd, int x, int y){///發(fā)送左鍵消息SendMessage(hWnd, 0x0201, (IntPtr)1, (IntPtr)(y * 65536 + x));Thread.Sleep(50);SendMessage(hWnd, 0x0202, (IntPtr)1, (IntPtr)(y * 65536 + x));}這段代碼是否有誤?
查看完整描述

2 回答

?
手掌心

TA貢獻(xiàn)1942條經(jīng)驗 獲得超3個贊

先看SendMessage
SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM IParam);
第一個參數(shù)HWND hWnd
故名思議是窗體句柄,你這兒作為參數(shù)傳遞進(jìn)來了
第二個參數(shù)UINT Msg
是windows消息常量,這里使用到兩個0x201,0x202,還是百科就可以找到,如下:
WM_LBUTTONDOWN = $0201;//按下鼠標(biāo)左鍵
WM_LBUTTONUP = $0202;//釋放鼠標(biāo)左鍵
第三個參數(shù)WPARAM wParam
MSDN里頭有這么一段
WM_LBUTTONDOWN
WPARAM wParam
LPARAM lParam;
Parameters
wParam
Indicates whether various virtual keys are down. This parameter can be one or more of the following values.
MK_CONTROL
The CTRL key is down.
MK_LBUTTON
The left mouse button is down.//這句是重點(diǎn)了,而后我查找MK_LBUTTON的值,就是定義為 0x01.也就是為什么是(IntPtr)1。
第四個參數(shù)LPARAM IParam
MSDN里說到
lParam
The low-order word specifies the x-coordinate of the cursor. The coordinate is relative to the upper-left corner of the client area.
The high-order word specifies the y-coordinate of the cursor. The coordinate is relative to the upper-left corner of the client area.
這里說到低位代表X坐標(biāo),指向左上角,高位則代表Y坐標(biāo)。從代碼中的(IntPtr)(y * 65536 + x)參數(shù)不難分析到,y * 65536相當(dāng)于<<16。65536代表16位數(shù)據(jù)的數(shù)據(jù)量,這個是屬于位的運(yùn)算。比如0-65535是個16位unsigned int類型的數(shù)據(jù)范圍,一共能取到的數(shù)就是65536.這個數(shù)據(jù)是個32位的數(shù)據(jù),前16位代表了X坐標(biāo)值,后16位為Y值,所以按照這個寫法應(yīng)該是正確的。




查看完整回答
反對 回復(fù) 2021-11-14
?
牛魔王的故事

TA貢獻(xiàn)1830條經(jīng)驗 獲得超3個贊

SendMessage 第二個參數(shù),指定發(fā)送的消息類型, 如鼠標(biāo)消息WM_LBUTTONDOWN,WM_MOUSEMOVE等。鍵盤消息:WM_KEYDOWN,WM_KEYUP
沒問題,最后2個參數(shù)也不必轉(zhuǎn)成句柄。

查看完整回答
反對 回復(fù) 2021-11-14
  • 2 回答
  • 0 關(guān)注
  • 512 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號