如何使用模拟小键盘上的按键? 我用postMessage(hw,WM_KEYDOWN, $60,0);不能模拟出小键盘的0按键但是用这个方法可以模拟出其他的按键,除了小键盘哪位朋友有更好的方法,或者那位朋友有直接读写键盘I/O的资料? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 procedure TForm1.Button1Click(Sender: TObject);begin sendmessage(edit1.Handle,WM_CHAR,$30,1); sendmessage(edit1.Handle,WM_CHAR,$31,1); sendmessage(edit1.Handle,WM_CHAR,$32,1); sendmessage(edit1.Handle,WM_CHAR,$33,1);end; 小键盘的按键好像不能响应windows的消息。 如果想模拟小键盘上的按键要用procedure TForm1.Button1Click(Sender: TObject);begin edit1.SetFocus; keybd_event(VK_NUMPAD0,MapVirtualKey(VK_NUMPAD0,0),0,0); keybd_event(VK_NUMPAD0,MapVirtualKey(VK_NUMPAD0,0),KEYEVENTF_KEYUP,0);//end; keybd_event(48,0,KEYEVENTF_EXTENDEDKEY,0); //KEYDOWN,keybd_event(48,0,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP,0); //KEYUP 可以用ASCII码控制0 ASC 48 键值 961 ASC 49 键值 972 ASC 50 键值 983 ASC 51 键值 994 ASC 52 键值 1005 ASC 53 键值 1016 ASC 54 键值 1027 ASC 55 键值 1038 ASC 56 键值 1049 ASC 57 键值 105. ASC 46 键值 110/ ASC 47 键值 111* ASC 42 键值 106- ASC 45 键值 109+ ASC 43 键值 107enter ASC 13 键值 13 keybd_event就可以小键盘的键值楼上贴的就是正确的,其他的可以在keydown事件里跟踪查询我奇怪的是为什么非要小键盘?模拟按键的小键盘0和key=48的大键盘0有区别么? procedure TForm1.Button1Click(Sender: TObject);begin edit1.SetFocus; keybd_event(VK_NUMPAD0,MapVirtualKey(VK_NUMPAD0,0),0,0); keybd_event(VK_NUMPAD0,MapVirtualKey(VK_NUMPAD0,0),KEYEVENTF_KEYUP,0);//end;昨天刚刚贴过这个答案 有什么办法可以把查找标题包含于'聊天中'的窗体句柄? 透明背景文字的无闪烁滚动(透明滚动文字)实现 关于dxgrid的打印问题 请问在程序中如何强行关闭程序 DBGrid的问题! Ttable,tadoquery到底哪个好? 第一次用installshield制作安装文件,请指教 关于如何修改ListView中每项的SubItem值的问题?up有分 如何删除EXCEL表格中的一行 excel的简单问题 各位大侠。。请帮个忙。。再线等待。。谢谢了! 求和
begin
sendmessage(edit1.Handle,WM_CHAR,$30,1);
sendmessage(edit1.Handle,WM_CHAR,$31,1);
sendmessage(edit1.Handle,WM_CHAR,$32,1);
sendmessage(edit1.Handle,WM_CHAR,$33,1);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
edit1.SetFocus;
keybd_event(VK_NUMPAD0,MapVirtualKey(VK_NUMPAD0,0),0,0);
keybd_event(VK_NUMPAD0,MapVirtualKey(VK_NUMPAD0,0),KEYEVENTF_KEYUP,0);//
end;
0 ASC 48 键值 96
1 ASC 49 键值 97
2 ASC 50 键值 98
3 ASC 51 键值 99
4 ASC 52 键值 100
5 ASC 53 键值 101
6 ASC 54 键值 102
7 ASC 55 键值 103
8 ASC 56 键值 104
9 ASC 57 键值 105
. ASC 46 键值 110
/ ASC 47 键值 111
* ASC 42 键值 106
- ASC 45 键值 109
+ ASC 43 键值 107
enter ASC 13 键值 13
小键盘的键值楼上贴的就是正确的,其他的可以在keydown事件里跟踪查询
我奇怪的是为什么非要小键盘?模拟按键的小键盘0和key=48的大键盘0有区别么?
begin
edit1.SetFocus;
keybd_event(VK_NUMPAD0,MapVirtualKey(VK_NUMPAD0,0),0,0);
keybd_event(VK_NUMPAD0,MapVirtualKey(VK_NUMPAD0,0),KEYEVENTF_KEYUP,0);//
end;
昨天刚刚贴过这个答案