我的問題是使用簡單的編輯框。它的定義是這樣的:win32編輯框以新行顯示
hEditIn=CreateWindowEx(WS_EX_CLIENTEDGE,
L"EDIT",
L"",
WS_CHILD|WS_VISIBLE|ES_MULTILINE|
ES_AUTOVSCROLL|ES_AUTOHSCROLL,
50,
120,
400,
200,
hWnd,
(HMENU)IDC_EDIT_IN,
GetModuleHandle(NULL),
NULL);
之後,當我打電話SendMessage函數是這樣的:
SendMessage(hEditIn,
WM_SETTEXT,
NULL,
(LPARAM)L"Connected\r\n");
SendMessage(hEditIn,
WM_SETTEXT,
NULL,
(LPARAM)L"TESTSTR");
我只得到最後的消息,而不是第一消息和第二在新的生產線。
這也有問題,因爲如果serv retreive WM_ACCEPT消息,我想每次都在新行中顯示「Connected」。
'WM_SETTEXT'叫,那是因爲它,呃,設置文本,不追加它。如果你想要後者的行爲,請考慮閱讀['WM_GETTEXTLENGTH'](http://msdn.microsoft.com/en-us/library/windows/desktop/ms632628.aspx)和['WM_GETTEXT'](http ://msdn.microsoft.com/en-us/library/windows/desktop/ms632627.aspx) – Joulukuusi