以追加的方式
CEdit::SetSel(-1, -1);
CEdit::ReplaceSel(_T("XXXX");

解决方案 »

  1.   

    不过要注意Edit的limited Text 限制。
      

  2.   

    没有用啊。
    clog += "message1\r\n";
    edit->SetWindowText(clog);
    Sleep(1000);
    edit->SetSel(-1, -1);
    edit->ReplaceSel(_T("message2\r\n"));
    我希望先显示message1,过1秒后显示message2,但是实际上是点击“注入”后,等了一秒,然后message1和message2一起显示
      

  3.   

    Sleep会让主线程中断,相当于所有操作停止了。建议用Timer
      

  4.   

    我具体程序里不是sleep,而是调用了别的函数,会占用一定时间,那样还是同时显示啊
      

  5.   

    主窗体类中加个消息处理函数,所有需要打log显示的地方都去post消息,
    PostMessage(WM_MSG,log, null);
    消息处理函数中,调用SetSel和ReplaceSel。
      

  6.   

    写一个消息事件  UM_ADDLOGDATA  
    写一个对应的相应函数  
    LRESULT AddLogData(WPARAM wParam, LPARAM lParam)
    {
     CString strTemp = (CString)wParam; 
     /*  将 strTemp 添加到listbox中 */
    return 0;
    }需要加入Log的地方 PosMessage(HWND, UM_ADDLOGDATA, (WPARAM)szData, NULL)