视频监控SDK问题求教

苍炎天心 2016-07-25 10:05:30
请问怎么在OCX控件全屏状态下使用键盘事件
...全文
765 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
谭建新 2016-09-06
  • 打赏
  • 举报
回复
引用 4 楼 u012072873 的回复:
不好意思 前段时间一直在出差 没有看我的帖子 , 程序是CS程序的,请问有什么好方法吗?
用windows 的 钩子函数吧
赵4老师 2016-09-06
  • 打赏
  • 举报
回复
苍炎天心 2016-09-05
  • 打赏
  • 举报
回复
不好意思 前段时间一直在出差 没有看我的帖子 , 程序是CS程序的,请问有什么好方法吗?
Tcc2016 2016-07-25
  • 打赏
  • 举报
回复
不知道这样能不能解决你的问题,哈哈哈
Tcc2016 2016-07-25
  • 打赏
  • 举报
回复
在网页中的ocx控件有时无法获得键盘事件,当网页中的ocx控件上有子窗口的时候,更是无法获得键盘事件,解决该问题的方法如下: 1 想让你的Activex捕捉到控制键,必须要让他成为整个屏幕Actice的. 在CxxxCtrl的OnCreate里面添加 OnActivateInPlace (TRUE, NULL); // == UI-Activate the control 因为IE不会自动激活首次加载的控件。 2在OnMouseActivate方法中添加OnActivateInPlace (TRUE, NULL); 这样Activex就可以捕获到控制键了。紧接着要做的就是在PreTranslateMessage中判断消息,然后分发给需要的Cwnd。 int CxxxCtrl::OnMouseActivate(CWnd* pDesktopWnd, UINT nHitTest, UINT message) { ::PostMessage(wnd , WM_KEYDOWN , 0 , 0); //wnd为接受信息的窗口、WM_KEYDOWN为发送的消息类型 return COleControl::OnMouseActivate(pDesktopWnd, nHitTest, message); } 这样当网页一旦加载完成,ocx便自动获得了焦点。并且当鼠标在ocx的子窗口上点击,ocx也能获得键盘事件。 转载自http://blog.csdn.net/yh2008_chase/article/details/8155439
谭建新 2016-07-25
  • 打赏
  • 举报
回复
引用 楼主 u012072873 的回复:
请问怎么在OCX控件全屏状态下使用键盘事件
楼上用的 BS ,还CS结构成续呢 ,全屏获取键盘是用于退出么。

177

社区成员

发帖
与我相关
我的任务
社区管理员
  • 企业通信
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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