添加到对话框里的webbrowser无法响应键盘的按键消息,如:回车、快捷键、tab等
网上找到了个简单的方法:http://www.codeproject.com/KB/wtl/wtl4mfc6.aspx
方法在“Keyboard Handling”这一节,翻译过来就是:
问题原因:对话框使用IsDialogMessage来处理了所有的键盘消息,这样webbrowser就无法得到响应的键盘消息了
解决方法:在对话框的PreTranslateMessage里发送WM_FORWARDMSG消息,普通的窗口因无法识别这个消息而自动忽略,但是获得焦点(has the focus)的ActiveX控件能正确识别这个消息并看看是否要对这个消息进行处理
代码:
这个是wtl代码,mfc的应该也差不多
添加这个代码后webbrowser里的回车、tab、快捷键都能正常响应了