delphi7.0 模拟按键问题,我有一串字符 123!@#,<>/?Aaaaa 全键盘字符 的字符串,怎么用模拟按键输出。
展开全部
//按键--可见字符,tmp就是你要输出的字符串
for tmp := 1 to Length(v) do
begin
if(VkKeyScan(v[tmp])>256)then
begin
keybd_event(vk_Shift,0,0,0);
keybd_event(Ord(v[tmp]),0,0,0);
keybd_event(Ord(v[tmp]),0,2,0);
keybd_event(vk_Shift,0,2,0);
end
else
begin
keybd_event(VkKeyScan(v[tmp]),0,0,0);
keybd_event(VkKeyScan(v[tmp]),0,2,0);
end;
end;
对于无可见字符的按键,如Ctrl Shift Home等键就只能通过键码了
keybd_event(vk_Shift,0,0,0); //按下Shift键,
keybd_event(16,0,0,0); //同样是按下Shift键,在DELPHI里按住Ctrl 再用鼠标点击vk_Shift,你会发现它其实就是一个常量,值就是16,而16正是Shift的按键值
keybd_event(vk_Shift,0,2,0); //松开Shift键,
其他键就是相同的道理啦
for tmp := 1 to Length(v) do
begin
if(VkKeyScan(v[tmp])>256)then
begin
keybd_event(vk_Shift,0,0,0);
keybd_event(Ord(v[tmp]),0,0,0);
keybd_event(Ord(v[tmp]),0,2,0);
keybd_event(vk_Shift,0,2,0);
end
else
begin
keybd_event(VkKeyScan(v[tmp]),0,0,0);
keybd_event(VkKeyScan(v[tmp]),0,2,0);
end;
end;
对于无可见字符的按键,如Ctrl Shift Home等键就只能通过键码了
keybd_event(vk_Shift,0,0,0); //按下Shift键,
keybd_event(16,0,0,0); //同样是按下Shift键,在DELPHI里按住Ctrl 再用鼠标点击vk_Shift,你会发现它其实就是一个常量,值就是16,而16正是Shift的按键值
keybd_event(vk_Shift,0,2,0); //松开Shift键,
其他键就是相同的道理啦
展开全部
Edit1.setfocus;
keybd_event(86,MapVirtualKey(86,0),0,0);
keybd_event(86,MapVirtualKey(86,0),2,0);
以上86就是字母v的键值 功能就是设置输入焦点在edit1。
然后在edit1模拟一个按键消息 输入一个小写v 这个你已经没问题了
平常我们怎么输入V的? 那是可以按住Shift 再按v建 那就成了输入大写V了
所以按键消息也是这么模拟的
keybd_event(VK_SHIFT ,0,0,0);//按下shift键
keybd_event(86,MapVirtualKey(86,0),0,0);//按下v键
keybd_event(86,MapVirtualKey(86,0),2,0);//抬起v键
keybd_event(VK_SHIFT ,0,2,0);//抬起Shift键 这就是实现了输入大写V
至于输入@ 也是一样道理 @键在我电脑上就是2键 所以
1 按下shift键
2 按下2键
3 松开2键
4 松开Shift键
专业代做各类软件,回扣巨大
keybd_event(86,MapVirtualKey(86,0),0,0);
keybd_event(86,MapVirtualKey(86,0),2,0);
以上86就是字母v的键值 功能就是设置输入焦点在edit1。
然后在edit1模拟一个按键消息 输入一个小写v 这个你已经没问题了
平常我们怎么输入V的? 那是可以按住Shift 再按v建 那就成了输入大写V了
所以按键消息也是这么模拟的
keybd_event(VK_SHIFT ,0,0,0);//按下shift键
keybd_event(86,MapVirtualKey(86,0),0,0);//按下v键
keybd_event(86,MapVirtualKey(86,0),2,0);//抬起v键
keybd_event(VK_SHIFT ,0,2,0);//抬起Shift键 这就是实现了输入大写V
至于输入@ 也是一样道理 @键在我电脑上就是2键 所以
1 按下shift键
2 按下2键
3 松开2键
4 松开Shift键
专业代做各类软件,回扣巨大
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询