基于IE内核的WebBrowser控件,键盘消息需要特殊处理的问题

这里只记录基于MFC-Dialog类型的应用程序嵌入WebBrowser控件,如果网页中包含文本框web控件时候,对Enter、Delete、Tab键的处理方法。

      第一种情况.对话框为模态对话框,Enter键无效,Delete、Tab正常。

 解决方法:保证该消息可以被正常TranslateMessage(pMsg); DispatchMessage(pMsg);,CDialog::PretranslateMessage,返回FALSE即可。

     第二种情况对话框为非模态对话框,Enter,Delete、Tab 都不正常。

        解决方法:确保Delete、Tab键可以被IOleInPlaceActiveObject接口的TranslateAccelerator方法处理,对于Enter键解决方法同上。


问题原因分析,参见http://blog.csdn.net/tr0j4n/article/details/4565953,再次对相关作者表示感谢。

你可能感兴趣的:(vc++,浏览器控件定制)