SendMessage无效
我有一个数据查询任务,耗时比较长,查询结构我会写到一个Dialog里面的Edit里面,但是我想在查询前清空该Edit,我用SendMessage发送WM_SETTEXT来实现。但是没有效果。该Edit绑定了一个CString。
我查过MSDN,MSDn上说“The DefWindowProc function sets and displays the window text. ”按照我的理解,我发送WM_SETTEXT应该可以的啊!请各位帮我看下原因。
代码如下:
char strNull[9]={"Querying"};
::SendMessage(GetDlgItem(IDC_EDIT2)->GetSafeHwnd(), WM_SETTEXT, 0, (LPARAM)(LPCTSTR)strNull);
[解决办法]
SendDlgItemMessage(IDC_EDIT2, EM_SETSEL, 0, -1);
SendDlgItemMessage(IDC_EDIT2, EM_REPLACESEL, 0,(LPARAM)(LPCTSTR)strNull );
这比WM_SETTEXT 快多了。