请问如何调用其他应用程序的快捷键?

rabbit008 2003-10-17 04:14:24
我想在我的程序里向一个IE窗口发送Ctrl+F,再发送文字给该查找窗口,最后发送一个回车让其自动查找,请问如何实现?该IE的hWnd我已经得到.
...全文
55 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
chifengwatch 2003-10-17
  • 打赏
  • 举报
回复
同意ccrun(老妖)(www.ccrun.com)
FindWindow
keybd_event
rabbit008 2003-10-17
  • 打赏
  • 举报
回复
谢谢ccrun(老妖)(www.ccrun.com)
sfemil 2003-10-17
  • 打赏
  • 举报
回复
学习
ccrun.com 2003-10-17
  • 打赏
  • 举报
回复
大概的给你一段代码,自己再加工加工吧。我要下班了。呵呵。
这段代码在打开www.google.com,然后搜索"2003",我试的成功了。


void __fastcall TForm1::Button1Click(TObject *Sender)
{
HWND hWin=::FindWindow("IEFrame",NULL);
if(hWin==NULL)
return;

::BringWindowToTop(hWin);
keybd_event(VK_LCONTROL, 0, 0, 0);
keybd_event('F', 0, 0, 0);
keybd_event(VK_LCONTROL, 0, KEYEVENTF_KEYUP, 0);
keybd_event('F', 0, KEYEVENTF_KEYUP, 0);
Sleep(1000);

HWND hFindWin=::FindWindow("Internet Explorer_TridentDlgFrame",NULL);
if(hFindWin==NULL)
return;
::BringWindowToTop(hWin);

unsigned char *szBuf="2003";
for(int i=0;i<sizeof(szBuf);i++)
{
keybd_event(szBuf[i], 0, 0, 0);
keybd_event(szBuf[i], 0, KEYEVENTF_KEYUP, 0);
Sleep(10);
}
keybd_event(VK_RETURN, 0, 0, 0);
keybd_event(VK_RETURN, 0, KEYEVENTF_KEYUP, 0);
}
tigerhohoo 2003-10-17
  • 打赏
  • 举报
回复
查找之后呢,有办法取出查找结果吗?

ljianq 2003-10-17
  • 打赏
  • 举报
回复
学习;

顺便友情UP!

13,824

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧