我用了一个CComboBox和一个多行的CEdit控件,当改变ComboBox中的选择时,首先将CEdit中的内容保存下来,然后根据新的选择更改CEdit中的内容。目前,我所遇到的问题如下:
在保存CEdit中的内容时,虽然CEdit中的内容已编辑过,但我发现通过GetLine取得的内容并不正确(编辑不改变行数,只改变各行的内容),请问各位知道是什么原因吗?我通过GetWindowText取出的结果又是正确的!

解决方案 »

  1.   

    你可以给CEdit 定义一个变量m_string,然后用
    UpdateData(true);//取内容.
    ....
    //修改m_string.....
    UpdateData(false);//显示内容
      

  2.   

    myhaocat:可能我说的不是太明白,我是通过GetLine得到每一行的内容存到一个指定的数组中时出错,而并不是显示出错。另外,为了尽快完成程序,我现在是通过GetWindowText得到所有的字符串,然后通过分解来完成的。但我仍然想知道为什么GetLine会不正确?
      

  3.   

    m_edit1.GetLine(1,sz,MAX_LEN);
    我这正常,如果你用两个参数的,第一个字节要为长度,如
    sz[0]=MAX_LEN;
    m_edit1.GetLine(1,sz);