开发IE Toolbar时,输入窗口不能输入中文(解决)
2008-10-22 13:13
295 查看
在最后相应windows消息传递的时候,需要处理一下:STDMETHODIMP CMyIEToolbar::TranslateAcceleratorIO(LPMSG lpMsg)
{
//编辑框输入中文解决方法(抄来的,没研究)
int nVirtkey = (int)lpMsg->wParam;
if(WM_KEYUP == lpMsg->message && VK_RETURN == nVirtkey)
{
lpMsg->wParam = 0;
//发送enter键的消息给父窗口,消息是WM_GETQUOTE,将lpMsg的wParam设为0
::PostMessage(m_ReflectWnd.GetToolBar().GetEditBox().GetParent(),WM_GETQUOTE,0,0);
return S_OK;
}
else if((WM_KEYUP == lpMsg->message || WM_KEYDOWN == lpMsg->message) &
VK_BACK == nVirtkey ||(VK_END <= nVirtkey && VK_DOWN >= nVirtkey ) || VK_DELETE == nVirtkey)
{
TranslateMessage(lpMsg);
DispatchMessage(lpMsg);
return S_OK;
}
else
{
return S_FALSE;
}
}
{
//编辑框输入中文解决方法(抄来的,没研究)
int nVirtkey = (int)lpMsg->wParam;
if(WM_KEYUP == lpMsg->message && VK_RETURN == nVirtkey)
{
lpMsg->wParam = 0;
//发送enter键的消息给父窗口,消息是WM_GETQUOTE,将lpMsg的wParam设为0
::PostMessage(m_ReflectWnd.GetToolBar().GetEditBox().GetParent(),WM_GETQUOTE,0,0);
return S_OK;
}
else if((WM_KEYUP == lpMsg->message || WM_KEYDOWN == lpMsg->message) &
VK_BACK == nVirtkey ||(VK_END <= nVirtkey && VK_DOWN >= nVirtkey ) || VK_DELETE == nVirtkey)
{
TranslateMessage(lpMsg);
DispatchMessage(lpMsg);
return S_OK;
}
else
{
return S_FALSE;
}
}
相关文章推荐
- 解决ubuntu下用sublime-text2不能输入中文的问题 fcitx
- PhpStorm 2016.3 For Mac 重大里程碑更新 -- 终于解决了不能输入中文标点符号的重大bug
- 解决ubuntu14.04下Qt 5.3.1下的QtCreator fcitx,ibus不能输入中文
- 终于解决了在控制台不能输入中文输入法的问题了
- 命令行窗口下不能输入中文
- Ubuntu 14.04使用Qt5不能输入中文的解决办法
- jQuery如何解决IE输入框不能输入的问题
- SZTextView 不能输入中文解决方法
- 【吐血写此博】Fedora14下eclipse进行android开发,ibus提示没有输入窗口的 解决办法
- 关于vs2013中不能输入中文的问题解决方法
- ubuntu16.04下gedit打开文件,不能输入中文的解决办法
- WIN32控制台程序不能输入中文汉字解决办法
- 解决JIRA不能输入中文的问题
- Ubuntu Kylin 16.04 下wps文字/wps表格/wps演示不能输入中文的解决办法
- ubuntu中解决android studio 不能输入中文
- Ubuntu下搜狗拼音不能正常输入中文问题解决方法
- 解决Office Word不能切换中文输入
- 解决Ubuntu/LInux QT5.8(QTCreater4.1)不能输入中文问题
- Linxu下Android Studio不能输入中文的解决办法
- 解决java中输入中文时出现多余的小窗口问题