VK_LEFT、VK_RIGHT在IE中不被识别???

ppfly2008 2007-10-15 02:51:12
在自己的容器测试中一切正常,在IE中VK_LEFT、VK_RIGHT不被识别??大家帮忙看看^_^
代码如下:

...
if((GetKeyState(VK_LSHIFT) & 0x8000) == 32768)
bShiftKeyPressed = TRUE;

if(bShiftKeyPressed)
{
switch(pMsg->wParam)
{
case VK_LEFT: // LEFT
AfxMessageBox("1");
m_p->shiftKeyPress(1);
break;
case VK_RIGHT:// RIGHT
AfxMessageBox("2");
m_p->shiftKeyPress(2);
break;
case VK_HOME: // HOME
AfxMessageBox("3");
m_p->shiftKeyPress(3);
break;
...
}
...
}
...

bShiftKeyPressed == TRUE是没有问题的

在IE中shift + HOME以及后面的组合键都可以完成选择,
VK_LEFT&VK_RIGHT不执行选择功能,而是执行了光标移动的功能!
...全文
272 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
xyq1986 2007-10-15
  • 打赏
  • 举报
回复
hook
ppfly2008 2007-10-15
  • 打赏
  • 举报
回复
想办法改变这个次序!
---
请教LS 您有什么办法share一下!谢谢~这个东西我也是第一次做~
ouyh12345 2007-10-15
  • 打赏
  • 举报
回复
拦截消息的次序问题,ie的处理在楼主的处理之前。
想办法改变这个次序
ppfly2008 2007-10-15
  • 打赏
  • 举报
回复
仔细查了一下:
在执行shift + left时
首先单独响应了shift但是没有执行VK_LEFT分支
然后响应OnKeyDown执行left功能!

这个是什么原因?
shift+home和shift+left有什么区别吗?
ouyh12345 2007-10-15
  • 打赏
  • 举报
回复
VK_LEFT&VK_RIGHT不执行选择功能,而是执行了光标移动的功能

--

说明ie还是识别方向键的,只是在楼主处理左右键时,ie已经把它拦截了

想办法在ie之前先处理左右键

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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