IE加载OCX控件,在控件中如何知晓IE是否为激活状态???

LittleNumb 2012-11-26 06:12:15
做的OCX控件需要捕获空格键,如果当前操作程序是加载OCX的IE则捕获,那么问题来了,我如何知道当前操作窗口是否为加载ocx的IE呢?或者换种说法,能否通过确定ocx是激活的来判断呢?
亲们,求救啊!
...全文
312 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
PekingStreet 2013-05-20
  • 打赏
  • 举报
回复
解决了吗?亲。。遇到了类似问题。
疏楼望月 2013-01-31
  • 打赏
  • 举报
回复
要是使ocx捕获空格操作可以这么做,首先使用钩子函数将键盘消息勾到。然后通过PreTranslateMessage消息进行处理。下面的钩子函数写的不全,你可以收一下如用钩子函数将消息勾到。 LRESULT CALLBACK GetMessageProc(int nCode, WPARAM wParam, LPARAM lParam) { AFX_MANAGE_STATE(AfxGetStaticModuleState( )); LPMSG lpMsg = (LPMSG) lParam; char szClass[250]={0}; GetClassNameA(lpMsg->hwnd,szClass,250); char szClass2[250]={0}; GetClassNameA(lpMsg->hwnd,szClass2,250); if (stricmp(szClass,"ComboBox") != 0) { if( (nCode >= 0) && (PM_REMOVE == wParam) && AfxGetApp()->PreTranslateMessage(lpMsg)) { //lpMsg->message = WM_NULL; //lpMsg->lParam = 0L; //lpMsg->wParam = 0; } } return ::CallNextHookEx(hHook, nCode, wParam, lParam); }
LittleNumb 2012-11-27
  • 打赏
  • 举报
回复
引用 2 楼 shine159111 的回复:
不太清楚你的问题。是否可以在IE调用时,约定传一个参数给OCX,这样就知道是IE或者其它东西在调用你的OCX了。 如下: <object classid="clsid:A8BAE103-FB8D-44FB-BB5B-7043F6D49755" id="ATM" width="100" height="100"> <param name="_cx" value="2646"> <pa……
我也想让java组这么搞,但是他们说JS无法获取ie的是否处于激活状态啊?所以他们把这个推给我的控件了
  • 打赏
  • 举报
回复
不太清楚你的问题。是否可以在IE调用时,约定传一个参数给OCX,这样就知道是IE或者其它东西在调用你的OCX了。 如下: <object classid="clsid:A8BAE103-FB8D-44FB-BB5B-7043F6D49755" id="ATM" width="100" height="100"> <param name="_cx" value="2646"> <param name="_cy" value="2646">
LittleNumb 2012-11-26
  • 打赏
  • 举报
回复
自己UP一下!

3,245

社区成员

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

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