才想学VC,建立一个对话框程序,上面放了一个richedit控件,我把richedit设置为多行时,在richedit中不能回车进行换行输入,当我把richedit的多行取消后,在输入的时候,一回车程序就退出了,怎么回事?

解决方案 »

  1.   

    设置该控件的属性,好像是wantreturn,你多试试
      

  2.   

    to mjk()
    我设置了,wantreturn好用了,可以换行了!
    void CRichEditTestDlg::OnButton1() 
    {
      UpdateData(TRUE);
      
      CString Text;
      int index = atoi(m_EditText);
      Text.Format("index = %d",index);
      AfxMessageBox (Text);
      int linelength = m_RichEdit.LineLength( index );//取得此列的长度
      Text.Format("linelength = %d",linelength);
      AfxMessageBox (Text);
      
      char * buf= new char[linelength+1];
      
      m_RichEdit.GetLine( index, buf, linelength);
     
      buf[linelength]=0;
      m_Edit2Text = buf;
      
      UpdateData(FALSE);
      delete buf;
    }为什么我取得的列的长度都是第0列的长度呢?没有变化?怎么回事?
      

  3.   

    设置下面四项属性,其他一律不选就ok了
    Multiline + Vertical scroll + Auto Vscroll + want return
    may you succeed!
      

  4.   

    默认的焦点是 确定按钮,将其default属性去掉或者改变ID标识
      

  5.   

    可能是m_EditText的值没有改变或者被什么函数修改了(比如OnInitDialog)。可以在int index 行设个断点看看