,一个关于win32 编辑控件的光标有关问题

请教各位,一个关于win32 编辑控件的光标问题?
我现在想实现的是这样的一个功能,我打算在主窗口屏幕上双击鼠标,这时候再鼠标的位置创建一个编辑控件,
这个编辑空间中默认有hello world这样的文本。

我的问题是,我双击之后创建了编辑控件,但是这时候看不到光标在闪烁,必须得鼠标再次点击一下文本框才行。

我现在想要的效果是,双击创建编辑控件后可以看到光标闪烁,而且光标位于这段文本的最右侧,同时可以直接输入文字编辑。

我尝试了SetFocus(hEdit); //加上这句之后可以直接编辑了,但是看不到光标删除,而且是在最左侧插入字符。
        ShowCaret(hEdit);// 加上这个之后仍然看不到光标闪烁,并且产生的另外一个问题是点击鼠标居然也看不到光标了。

各位帮忙看看咋回事儿呢?

------解决方案--------------------
BOOL CXXXDlg::PreTranslateMessage(MSG* pMsg) 
{
if((WM_LBUTTONDBLCLK == pMsg->message) && (GetSafeHwnd() == pMsg->hwnd))
{
CEdit edit;
CPoint pt = pMsg->pt;
ScreenToClient(&pt);
edit.Create(WS_CHILD 
------解决方案--------------------
 WS_VISIBLE 
------解决方案--------------------
 WS_BORDER 
------解决方案--------------------
 ES_AUTOHSCROLL, CRect(pt, CSize(100, 20)), this, 0x11);
edit.SetFocus();
edit.SetSel(-1, -1);
edit.ReplaceSel(_T("Hello, World!"));
edit.UnsubclassWindow();
return TRUE;
}
return CDialog::PreTranslateMessage(pMsg);
}

------解决方案--------------------
SetCaretPos();
------解决方案--------------------
m_hEdit = 0 ??