用这个方法的话,只能是全部赋值,不能追加,GetDlgItem(IDC_EDIT1)->SetWindowText(_T("aaa"))
请问有什么办法可以append吗?

解决方案 »

  1.   

    映射个CString的变量,一直加就OK了,每次加之前+"\r\n”
      

  2.   

    int nStartChar, nEndChar ;
    m_edit.GetSel( nStartChar,nEndChar );
    m_edit.SetSel(nEndChar, nEndChar);// last
    m_edit.ReplaceSel("haha");//
      

  3.   

    这么复杂啊,使用代码,追加一行字符串,比如
    abc
    一会再追加一行,比如
    def
    这个时候内容变成了
    abc
    def
    没有简单的方法吗?
    比如GetDlgItem(IDC_EDIT1)->append("def");
      

  4.   

    没有别的方法,Cedit就是这样。
      

  5.   

    谢谢各位朋友。我是想把测试结果显示到一个文本框中,除了这个cedit,还有更简单一些的控件吗?
      

  6.   

    WTL的CEdit里有AppendText
    代码如下:
    int InsertText(long nInsertAfterChar, LPCTSTR lpstrText, BOOL bCanUndo = FALSE)
    {
    int nRet = SetSel(nInsertAfterChar, nInsertAfterChar);
    ReplaceSel(lpstrText, bCanUndo);
    return nRet;
    }
    int AppendText(LPCTSTR lpstrText, BOOL bCanUndo = FALSE)
    {
    return InsertText(GetWindowTextLength(), lpstrText, bCanUndo);
    }
      

  7.   

    用delphi吧,VC就是这么麻烦!
      

  8.   

    应该没有了,EDIT应该是最简单的了。
    你完全可以对EDIT关联一个CString变量m_strEdit;然后写作:
    m_strEdit+="\r\n";
    m_strEdit+="新内容";
    然后用Updatedata(FALSE);就行了
      

  9.   

    CEdit* pEdit = GetDlgItem(IDC_EDIT1);
    ASSERT(pEdit && pEdit->GetSafeHwnd());
    pEdit->SetSel(-1);
    pEdit->ReplaceSel(_T("Hello, World!"));
    http://blog.csdn.net/VisualEleven/archive/2011/03/01/6214725.aspx
      

  10.   

    void CPage4View::Printf(const wchar_t *fmt, ...)
    {
    wchar_t buff[1024];
    va_list argp;
    va_start(argp, fmt);
    vswprintf(buff, fmt, argp);
    va_end(argp);
    CEdit *pEdit = (CEdit *) GetDlgItem(IDC_EDITATT);
    pEdit->ReplaceSel(buff);
    }