四联光电智能照明论坛
标题:
WebBrowser和Edit控件同时存在时光标BUG
[打印本页]
作者:
魔幻使者Jack
时间:
2015-11-16 17:21
标题:
WebBrowser和Edit控件同时存在时光标BUG
之前在网上看到过,大概就是对话框上同时有WebBrowser和Edit控件,如果鼠标点击WebBrowser控件后再点击Edit控件,Edit控件的输入光标不能显示,但能够正确输入文字。
亲自试验了一下(VS2012),确实存在这个BUG,然后网上搜了下解决方案,没有找到,╮(╯_╰)╭。
自己研究了一下,最终解决方案就是重载PreTranslateMessage,在里面帮它SetFocus一下,搞定。附上代码:
BOOL CXXDlg::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message==WM_LBUTTONDOWN)
{
CWnd *pwnd=GetDlgItem(IDC_EDIT_STR);
if (pMsg->hwnd==pwnd->GetSafeHwnd())
{
pwnd->SetFocus();
}
}
return CDialogEx::PreTranslateMessage(pMsg);
}
复制代码
作者:
gxm771208
时间:
2015-11-17 09:57
你这代码段这块,还能直接复制,怎么弄出来的??
作者:
魔幻使者Jack
时间:
2015-11-17 10:47
gxm771208 发表于 2015-11-17 09:57
你这代码段这块,还能直接复制,怎么弄出来的??
点那个添加代码,然后放里面
作者:
gxm771208
时间:
2015-11-17 12:11
魔幻使者Jack 发表于 2015-11-17 10:47
点那个添加代码,然后放里面
哦,谢了,
昨晚试了几次没弄出来。
作者:
admin
时间:
2015-11-17 12:15
魔幻使者Jack 发表于 2015-11-17 10:47
点那个添加代码,然后放里面
果然好用
欢迎光临 四联光电智能照明论坛 (http://5xhome.com/)
Powered by Discuz! X3.2