MFC ActiveX CEdit

大致开发和NPAPI上类似。

但是在ie上会出现一个问题:

在CEdit输入框里面,按BACKSPACE是没有用的,当由插件切换到浏览器页面的其他部分,再聚焦到插件上的时候,不只BACKSPACE键,HOME,End,UP,DOWN,LEFT等等都没有响应。

http://kbalertz.com/195238/Control-Detect-Keystrokes-SSTabs-Exist.aspx

以上文章对问题说的更清楚点,以及解决方法。

处理方法:

在插件控制类里面添加ON_WM_MOUSEACTIVATE消息,处理函数:

int CMyEditCtlAppCtrl::OnMouseActivate(CWnd* pDesktopWnd,

             UINT nHitTest, UINT message)

   {

      OnActivateInPlace (TRUE, NULL); // UI-Activate the control

      return COleControl::OnMouseActivate(pDesktopWnd, nHitTest, message);

   }


 

简单理解成,当鼠标激活的时候,插件本身没有把某些消息传送下去,需要手动处理。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值