如下形式,能输出为"add&",但显示在控件上却为"add":
CString s1,s2;
s1="&";
s2="add"+s1;
AfxMessageBox(s2);
SetDlgItemText(IDC_Rename,s2);

解决方案 »

  1.   

    我也遇到了,解决问题的办法,就是写&&,用两个就可以了
      

  2.   

    就是说&是一个转译字符啊
      

  3.   

    转义字符是反斜杠啊
    http://www.zxbc.cn/html/cjjjc/1313414472165.html
      

  4.   

    (某些)控件上,例如按钮,&表示其后面字符为快捷键,例如&A显示为A加下划线,按A键就相当于点击了按钮。
      

  5.   

    这下我将本问题的str内容从组合框获取(内容"#")后,输出的为"add",显示的也变为"add",现在是组合框的问题了: CString str,tms;
    int sel=m_Cmb_chr.GetCurSel();
    m_Cmb_chr.GetLBText(sel,str.GetBuffer(0));
    //str="#";
    tms="add"+str;
    AfxMessageBox(n);
    m_rename.SetWindowText(tms);
      

  6.   


    CString str,tms;
    int sel=m_Cmb_chr.GetCurSel();
    m_Cmb_chr.GetLBText(sel,str.GetBuffer(0));//str="#";
    tms="add"+str;
    AfxMessageBox(n);
    m_rename.SetWindowText(tms);
      

  7.   

    CString str,tms;
    int sel=m_Cmb_chr.GetCurSel();
    m_Cmb_chr.GetLBText(sel,str.GetBuffer(0));//str="#";
    tms="add"+str;
    AfxMessageBox(n);    
    m_rename.SetWindowText(tms);
      

  8.   

    CEdit没有问题。
    ComboBox下的确发生“abc#”读出是"abc"
      

  9.   

    我用char str[2]代替了CString str,解决了