Php接收Vba post例子,vba发送窗口消息_postmessage
postmessage(Hwnd,WM_KEYDOWN,VK_Alt,0);
postmessage(Hwnd,WM_KEYDOWN,VK_O,0);
postmessage(Hwnd,WM_KEYUP,VK_O,0);
postmessage(Hwnd,WM_KEYUP,VK_Alt,0);
對(duì)普通字符鍵,直接用WM_CHAR消息:
PostMessage hwnd, WM_CHAR, Asc("A"), 0 ' 發(fā)送一個(gè) A 字符
對(duì)非普通字符鍵,如功能、方向鍵,用 WM_KEYDOWN、WM_KEYUP 消息:
PostMessage hWndMsg, WM_KEYDOWN, VK_ESCAPE, &H00010001 ' 模擬按下 Esc 鍵
PostMessage hWndMsg, WM_KEYUP, VK_ESCAPE, &HC0010001 ' 模擬抬起 Esc 鍵
以上最后一個(gè)參數(shù)(lParam)低16位(0001)表示按鍵一次,高8位00表示按下,C0表示抬起,次高8位(01)表示該鍵的掃描碼,可用 API MapVirtualKey(VirtualKey, 0)取得(注意:掃描碼在各系統(tǒng)可能會(huì)不同,在此以具體數(shù)值示例,實(shí)際應(yīng)用MapVirtualKey取得)。
下面要講Shift/Control/Alt修飾鍵與其它按鍵的組合怎樣發(fā)送,對(duì)于Shift和Control用以下方式(用到 API keybd_event):
keybd_event VK_SHIFT, &H2A, 0, 0 ' 模擬按下SHIFT鍵,&H2A是VK_SHIFT的掃描碼
PostMessage hWndMsg, WM_KEYDOWN, VK_A, &H001E0001 ' 模擬按下 A 鍵,SHIFT+A產(chǎn)生一個(gè)大寫A字符
PostMessage hWndMsg, WM_KEYUP, VK_A, &HC01E0001 ' 模擬抬起 A 鍵
keybd_event VK_SHIFT, &H2A, KEYEVENTF_KEYUP, 0 ' 模擬抬起 SHIFT 鍵
以上VK_SHIFT(掃描碼2A)換成VK_CONTROL(掃描碼1D)就可以實(shí)現(xiàn)Ctrl組合鍵,VK_A(掃描碼1E)也可以換成任意功能鍵,如VK_F4(掃描碼3E)。
對(duì)于Alt修飾鍵比較特別,它屬于系統(tǒng)按鍵,要用 WM_SYSKEYDOWN/WM_SYSKEYUP 消息,如下:
PostMessage hWndMsg, WM_SYSKEYDOWN, VK_F4, &H003E0001 Or &H20000000 ' 模擬按下 Alt+F4
PostMessage hWndMsg, WM_SYSKEYUP, VK_F4, &HC03E0001 Or &H20000000 ' 模擬抬起 Alt+F4
' &H20000000 為 context code 位,置 1 表示 Alt 鍵被按下
總結(jié)
以上是生活随笔為你收集整理的Php接收Vba post例子,vba发送窗口消息_postmessage的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sqlyog怎么连接mysql错误200
- 下一篇: 收发一体超声波测距离传感器模块_一文了解