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);
对普通字符键,直接用WM_CHAR消息:
PostMessage hwnd, WM_CHAR, Asc("A"), 0 ' 发送一个 A 字符
对非普通字符键,如功能、方向键,用 WM_KEYDOWN、WM_KEYUP 消息:
PostMessage hWndMsg, WM_KEYDOWN, VK_ESCAPE, &H00010001 ' 模拟按下 Esc 键
PostMessage hWndMsg, WM_KEYUP, VK_ESCAPE, &HC0010001 ' 模拟抬起 Esc 键
以上最后一个参数(lParam)低16位(0001)表示按键一次,高8位00表示按下,C0表示抬起,次高8位(01)表示该键的扫描码,可用 API MapVirtualKey(VirtualKey, 0)取得(注意:扫描码在各系统可能会不同,在此以具体数值示例,实际应用MapVirtualKey取得)。
下面要讲Shift/Control/Alt修饰键与其它按键的组合怎样发送,对于Shift和Control用以下方式(用到 API keybd_event):
keybd_event VK_SHIFT, &H2A, 0, 0 ' 模拟按下SHIFT键,&H2A是VK_SHIFT的扫描码
PostMessage hWndMsg,