欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4168|回復: 0
打印 上一主題 下一主題
收起左側(cè)

剛開始學MFC寫了一中午寫了個簡單計算器

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:102668 發(fā)表于 2016-1-10 23:14 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

學了一周的MFC發(fā)現(xiàn)這東西只你要理解了他的脈絡。其實也不像想象中的那么難。在我的一路學習——放棄——學習............................
之后,現(xiàn)在的我才算是對mfc有了個初步了解,現(xiàn)還是處在入門階段。
這個程序中只有下面的部分是我自己寫的,別的都是用vs 2008下的MFC應用程序向?qū)傻摹?br /> void CWYZDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知處理程序代碼
//方法一
//GetDlgItem(IDC_EDIT3)->GetWindowTextA(str3,10);//GetDlgItem(IDC)  返回一個CWind指針用他調(diào)用GetWindowTextA(char*,size)來獲取控件的內(nèi)容
   // GetDlgItem(IDC_EDIT1)->GetWindowTextA(str1,10);
//GetDlgItem(IDC_EDIT2)->GetWindowTextA(str2,2);
    //方法二
GetDlgItemTextA(IDC_EDIT3,str3,10);
    GetDlgItemTextA(IDC_EDIT2,str2,2);
GetDlgItemTextA(IDC_EDIT1,str1,10);
   //方法三
//num1=GetDlgItemInt(IDC_EDIT1);
//num3=GetDlgItemInt(IDC_EDIT3);
num1=atof(str1);//將字串轉(zhuǎn)換成數(shù)字
num3=atof(str3);
if(*str2==0)  return ;
if(*str2=='+'||*str2=='-'||*str2=='*'||*str2=='/')
{
  switch(*str2)
{
case '+' :GetDlgItem(IDC_STATIC1)->SetWindowTextA("被加數(shù)") ;
        GetDlgItem(IDC_STATIC2)->SetWindowTextA(" 加號 ") ;
     GetDlgItem(IDC_STATIC3)->SetWindowTextA(" 加數(shù) ") ;
     GetDlgItem(IDC_STATIC)->SetWindowTextA("  和  ") ;
     break;
     
case '-': GetDlgItem(IDC_STATIC1)->SetWindowTextA("被減數(shù)") ;
        GetDlgItem(IDC_STATIC2)->SetWindowTextA(" 減號 ") ;
     GetDlgItem(IDC_STATIC3)->SetWindowTextA(" 減數(shù) ") ;
     GetDlgItem(IDC_STATIC)->SetWindowTextA("  差  ") ;
  break;
case '*': GetDlgItem(IDC_STATIC1)->SetWindowTextA("被乘數(shù)") ;
        GetDlgItem(IDC_STATIC2)->SetWindowTextA(" 乘號 ") ;
     GetDlgItem(IDC_STATIC3)->SetWindowTextA(" 乘數(shù) ") ;
     GetDlgItem(IDC_STATIC)->SetWindowTextA("  積  ") ;
  break;
case '/': GetDlgItem(IDC_STATIC1)->SetWindowTextA("被除數(shù)") ;
        GetDlgItem(IDC_STATIC2)->SetWindowTextA(" 除號 ") ;
     GetDlgItem(IDC_STATIC3)->SetWindowTextA(" 除數(shù) ") ;
     GetDlgItem(IDC_STATIC)->SetWindowTextA("  商  ") ;
  break;
default :MessageBoxA( "出現(xiàn)異常","警告");
}
}


//UpdateData();
switch(*str2)
{
case '+' :
  num4=num3+num1;break;
case '-':
  num4=num1-num3;break;
case '*':
  num4=num3*num1;break;
case '/':
  num4=num1/num3;break;
default :MessageBoxA( "運算符輸入錯誤","警告");
  return ;
}
//UpdateData(FALSE);
// itoa(num4,str4,10);
    str4=fundz(num4);
GetDlgItem(IDC_EDIT4)->SetWindowTextA(str4);  //將計算后的結(jié)果存對編譯框中
}

void CWYZDlg::OnBnClickedButton2()//用于清空
{
// TODO: 在此添加控件通知處理程序代碼
GetDlgItem(IDC_EDIT1)->SetWindowTextA(0);
GetDlgItem(IDC_EDIT2)->SetWindowTextA(0);
GetDlgItem(IDC_EDIT3)->SetWindowTextA(0);
GetDlgItem(IDC_EDIT4)->SetWindowTextA(0);

    GetDlgItem(IDC_STATIC1)->SetWindowTextA("數(shù)值1");
  GetDlgItem(IDC_STATIC2)->SetWindowTextA("運算符");
   GetDlgItem(IDC_STATIC3)->SetWindowTextA("數(shù)值2");
    GetDlgItem(IDC_STATIC)->SetWindowTextA("結(jié)果");

}
char * CWYZDlg::fundz(double db)
{  
     char   cc[100];   
       sprintf(cc,"%.7g",db);
  return cc;
}
void CWYZDlg::OnBnClickedButton3()
{
// TODO: 在此添加控件通知處理程序代碼
MessageBoxA("   此計算器為一毛制做   \n\n    現(xiàn)在只能算加減乘除法數(shù)\n值\n    過大會出現(xiàn)精度上的誤差。\n別的功能會在學習中不斷添\n加。","提示");
}


經(jīng)過改進后的,新版本。計算器。
想看看的可以去這里下載。原代碼(工程)http://u.115.com/file/f8b98da8e2  mfc寫的一個簡單計算器.zip
想要用用的可以去這里下載  http://u.115.com/file/f8e853478b   Jsq.exe


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表