我的dialog类中的一个edit box对应的变量m_n初始值为零,程序运行时该editbox中显示为0,但我不想让它显示出来,该如何操作?我试过不赋初值,但显示出来的就是随机值,这是怎么回事?

解决方案 »

  1.   

    把edit box对应的变量m_n,设为CString;m_n=_T("");
      

  2.   

    在OnInitDialog里m_edit.SetWindowText("");
      

  3.   

    不管是什么数据类型,只要你调用函数:SetWindowText(NULL)就行了
    m_edit.SetWindowText("");
      

  4.   

    void CTestDlg::OnButton1() 
    {
    // TODO: Add your control notification handler code here
    GetDlgItem(IDC_EDIT1)-> SendMessage(WM_CUT,0,0);

    }
      

  5.   

    你不要复初值好了,反正对于int 系统默认初值为零的
      

  6.   

    m_n为int,m_n.SetWindowText(NULL)编译出错
    error C2228: left of '.SetWindowText' must have class/struct/union type
      

  7.   

    给那个EDIT再关联一个变量,类型为CEDIT,名为m_nEdit,再调m_nEdit.SetWindowText("");
      

  8.   

    楼上的,按你说的办法试了,编译没问题,运行出现错误“DEBUG ASSERTION FAILED”。
      

  9.   

    ((CEDit*)GetDlgItem(YOUR_EDIT_ID))->SetWindowText("") ;
      

  10.   

    一个变通的办法就是把那个零用函数剪切(cut)掉,我记得Edit控件中有函数可以用来执行选定和剪切任务的吧?看看msdn就知道了。
      

  11.   

    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
      

  12.   

    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
    在初始化对话框时,加入:
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
      

  13.   

    改过了GetDlgItem(IDC_EDIT1)->SetWindowText("");
    依然是那个错误:“DEBUG ASSERTION FAILED”。
    郁闷ing........
      

  14.   

    在调m_nEdit.SetWindowText("")之前加一句if(IsWindow(m_nEdit))
     m_nEdit.SetWindowText("");
      

  15.   

    在ClassWizard中把编辑控件建立一个"CEdit"变量,如m_MyEdit.
    在OnInitDialog()中,设置m_MyEdit.SetWindowText("");即可.