工作问题总结(二十九)模拟按键(刷新,前进,后退,主页)

来源:互联网 发布:php bug管理系统 编辑:程序博客网 时间:2024/04/27 11:18

一、网页操作

很多PC界面里面都会有这种功能,使用按钮控制网页的刷新。大家如果在浏览器中打开页面,最直接的就是F5刷新,那我们也可以模拟这个类型的按键操作。

 

1.主页

这个不需要模拟,直接在窗口里面打开网址就可。

//ShellExecute(NULL, "open", "IEXPLORE", strCanonicalHref, NULL,SW_SHOWNORMAL);//方式1//ShellExecute(NULL,"open",strCanonicalHref,NULL,NULL,SW_SHOWNORMAL);//方式2


打开网页在blog前面文章里有讲,方式1用于固定浏览器打开,方式2用于调用默认浏览器打开。

 

2.后退

首先要将焦点设置到该网页所在的窗口。

m_webCtrl.SetFocus();keybd_event(VK_MENU,0,0,0);keybd_event(VK_LEFT,0,0,0);keybd_event(VK_LEFT,0,KEYEVENTF_KEYUP,0);keybd_event(VK_MENU,0,KEYEVENTF_KEYUP,0);

keybd_event()就是对模拟鼠标事件的响应。

 

3.前进

m_webCtrl.SetFocus();keybd_event(VK_MENU,0,0,0);keybd_event(VK_RIGHT,0,0,0);keybd_event(VK_RIGHT,0,KEYEVENTF_KEYUP,0);keybd_event(VK_MENU,0,KEYEVENTF_KEYUP,0);

解释如上2

 

4.刷新

m_webCtrl.PostMessage(WM_KEYDOWN,(WPARAM)VK_F5,(LPARAM)0);m_webCtrl.PostMessage(WM_KEYUP,(WPARAM)VK_F5,(LPARAM)0);

刷新较前面有点不同,需要消息处理。直接模拟F5按钮。

 

二、模拟鼠标移动

POINT lpPoint; GetCursorPos(&lpPoint);SetCursorPos(lpPoint.x, lpPoint.y);mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);

这种方式可以在开启屏保(未设置桌面密码)时,通过模拟鼠标移动,解除屏保。

0 0
原创粉丝点击