注册 登录
编程论坛 VC++/MFC

求问编辑框清空问题

G梦 发布于 2013-09-27 20:21, 3609 次点击
具体就是编辑框用  SetDlgItemText(IDC_EDIT1,NULL);清空之后,再次输入数据的时候为什么还会出现清空之前的数据啊?还有就是怎样改啊?
附上部分代码好了:
void CEx_dilgDlg::OnButton2() //1号键
{
    m_EDIT1=m_EDIT1+"1";
    m_EDIT1.TrimLeft();
    m_EDIT1.TrimRight();
    UpdateData(FALSE); //将控件的内容存放到变量中去
    UpdateWindow();     //更新窗口显示出来  
//   GetDlgItem(IDC_LIST1->SetWindowText,string);
}

void CEx_dilgDlg::OnEDIT1()
{

    // TODO: Add your control notification handler code here
   
}

void CEx_dilgDlg::OnButton3() //2号键
{
    m_EDIT1=m_EDIT1+"2";
    m_EDIT1.TrimLeft();
    m_EDIT1.TrimRight();
    UpdateData(FALSE); //将控件的内容存放到变量中去
    UpdateWindow();
 
   
}

void CEx_dilgDlg::OnButton4() //3号键
{
    m_EDIT1=m_EDIT1+"3";
    m_EDIT1.TrimLeft();
    m_EDIT1.TrimRight();
    UpdateData(FALSE); //将控件的内容存放到变量中去
    UpdateWindow();  
}
 
 
void CEx_dilgDlg::OnButton5()//4号键
{
    m_EDIT1=m_EDIT1+"4";
    m_EDIT1.TrimLeft();
    m_EDIT1.TrimRight();
    UpdateData(FALSE); //将控件的内容存放到变量中去
    UpdateWindow();  
}
void CEx_dilgDlg::OnButton6()//5号键
{
    m_EDIT1=m_EDIT1+"5";
    m_EDIT1.TrimLeft();
    m_EDIT1.TrimRight();
    UpdateData(FALSE); //将控件的内容存放到变量中去
    UpdateWindow();      
}

void CEx_dilgDlg::OnButton7() //6号键
{
    m_EDIT1=m_EDIT1+"6";
    m_EDIT1.TrimLeft();
    m_EDIT1.TrimRight();
    UpdateData(FALSE); //将控件的内容存放到变量中去
    UpdateWindow();      
}


void CEx_dilgDlg::OnButton8()
{
    m_EDIT1=m_EDIT1+"7";
    m_EDIT1.TrimLeft();
    m_EDIT1.TrimRight();
    UpdateData(FALSE); //将控件的内容存放到变量中去
    UpdateWindow();         
}

void CEx_dilgDlg::OnButton9() //8号键
{
    m_EDIT1=m_EDIT1+"8";
    m_EDIT1.TrimLeft();
    m_EDIT1.TrimRight();
    UpdateData(FALSE); //将控件的内容存放到变量中去
    UpdateWindow();         
}

void CEx_dilgDlg::OnButton10() //9号键
{
    m_EDIT1=m_EDIT1+"9";
    m_EDIT1.TrimLeft();
    m_EDIT1.TrimRight();
    UpdateData(FALSE); //将控件的内容存放到变量中去
    UpdateWindow();         
}

void CEx_dilgDlg::OnButton11() //0号键
{
    m_EDIT1=m_EDIT1+"0";
    m_EDIT1.TrimLeft();
    m_EDIT1.TrimRight();
    UpdateData(FALSE); //将控件的内容存放到变量中去
    UpdateWindow();      
   
}

void CEx_dilgDlg::OnButton12() //.号键
{
    m_EDIT1=m_EDIT1+".";
    m_EDIT1.TrimLeft();
    m_EDIT1.TrimRight();
    UpdateData(FALSE); //将控件的内容存放到变量中去
    UpdateWindow();         
}

void CEx_dilgDlg::OnButton13() //加号键
{
        //m_EDIT1="+";
        num1=atoi(m_EDIT1);  
           SetDlgItemText(IDC_EDIT1,"");//清空编辑框内容  
         
}
void CEx_dilgDlg::OnButton14() //减号键
{   

     num1=atoi(m_EDIT1);  
    SetDlgItemText(IDC_EDIT1,"");//清空编辑框内容
 
}

 

void CEx_dilgDlg::OnButton15() //乘号键
{
        num1=atoi(m_EDIT1);  
    SetDlgItemText(IDC_EDIT1,"");//清空编辑框内容
     
}

void CEx_dilgDlg::OnButton16() //除号键
{      
    num1=atoi(m_EDIT1);  
    SetDlgItemText(IDC_EDIT1,"");//清空编辑框内容
}
 

void CEx_dilgDlg::OnButton19() //=号键
{
    char sstr = (char)(LPCTSTR)(m_EDIT1);
    switch(sstr)
    {
        case '+':  
            num2=atoi(m_EDIT1);
            SetDlgItemText(IDC_EDIT1,NULL);
           answ=num1+num2;
           m_EDIT1.Format("%d",answ); //将数字转换成字符  
           m_EDIT1.TrimLeft();
           m_EDIT1.TrimRight();
           UpdateData(FALSE);
           UpdateWindow();   break;
        case '-':
               num2=atoi(m_EDIT1);
            SetDlgItemText(IDC_EDIT1,"");
           answ=num1-num2;
            m_EDIT1.Format("%d",answ); //将数字转换成字符
         
           m_EDIT1.TrimLeft();
           m_EDIT1.TrimRight();
           UpdateData(FALSE);
           UpdateWindow();   break;
        case '*':
               num2=atoi(m_EDIT1);
            SetDlgItemText(IDC_EDIT1,"");
           answ=num1*num2;
          m_EDIT1.Format("%d",answ); //将数字转换成字符
         
           m_EDIT1.TrimLeft();
           m_EDIT1.TrimRight();
           UpdateData(FALSE);
           UpdateWindow();    break;
        case '/':
                 num2=atoi(m_EDIT1);
            SetDlgItemText(IDC_EDIT1,"");
           answ=num1/num2;
            m_EDIT1.Format("%d",answ); //将数字转换成字符
           m_EDIT1.TrimLeft();
           m_EDIT1.TrimRight();
           UpdateData(FALSE);
           UpdateWindow();    break;
 
    }
}

void CEx_dilgDlg::OnButton18()
{
  SetDlgItemText(IDC_EDIT1,NULL);
}
PS:  这是一个计算器的程序
3 回复
#2
toofunny2013-09-27 21:53
清空的同时,要把m_EDIT1变量的字符串也清空。
#3
G梦2013-09-28 22:06
回复 2楼 toofunny
嗯  我改正过来了,谢谢
#4
toofunny2013-09-28 22:34
回复 3楼 G梦
做得好
1