C++作四則運算的MFC計算器(一)MFC界面建立

 

學習最有效的方法就是實戰,這兩篇文章寫了作MFC加減乘除計算器的過程。html

第一寫前臺MFC界面搭建,第二寫後臺計算原理及代碼。編程

MFC編程參考教程:http://www.jizhuomi.com/school/c/149.html編輯器

第二篇文章連接:C++作四則運算的MFC計算器(二)棧轉換和計算後綴表達式函數

  搭建MFC項目工具

以VS2017爲例,新建項目->MFC項目,寫名字,設路徑佈局

 

 

 

應用程序類型,選擇基於對話框的,其餘默認便可,直到最後一步學習

 

 

生成的類選擇Dlgspa

 

 

完成後,項目裏會有不少自動添加的資源3d

 

 

.ico是圖標,隨便玩。調試

.rc和.rc2:rc2文件包含項目使用的附加資源的腳本文件。能夠在項目的 .rc 文件的頂部包括 .rc2 文件。 .rc2 文件用於存放由多個不一樣項目使用的資源。沒必要爲不一樣的項目屢次建立相同的資源,而是能夠將它們放在一個 .rc2 文件中,而後將該 .rc2 文件包括在主 .rc 文件中。雙擊都會調到資源視圖,在這編輯界面。

 

 

Dialog就是主要編輯的地方,ABOUTBOX是幫主窗口,MFCCALCULATION_DIALOG是主要窗口

 

那怎麼加東西呢?在工具箱裏,工具箱通常在側面的一個犄角格拉里,豎着的,裏面有各類組件,感興趣的玩玩看。

 

 

此處用button按鈕、Edit Control編輯框和static text靜態文本就夠了。

把button拖到界面上,再按Ctrl拖能複製,數字0-九、+、-、*、/、(、)、刪除、清空和 =,19個按鈕。用參考線(格式->參考線設置)佈局更方便。

右鍵按鈕->屬性,顯示控件的各類屬性,其中Caption屬性是按鈕的內容,寫「1」按鈕就顯示「1」,窗口的Caption就是窗口的標題。每一個控件的ID屬性是獨立的,用默認生成的就行,也能夠本身編寫。

 

 

  按鈕事件

「刪除」按鈕點一次刪除一個字符,「清空」按鈕就是清空,其餘按鈕每點一次,表達式編輯框就加一個字符

先爲編輯框建立「值」變量、「控件」變量來控制內容,簡單地理解:「值」給「控件」就會顯示。右鍵表達式編輯器->添加變量

「值」類別是編輯框要現實的內容,名稱爲editv。再以同方法建「控件」類別的變量editc。

計算結果框也要有「值」變量和「控件」變量,分別是resultv、resultc。

 

 

 

接下來爲每一個按鈕單擊時顯示到編輯框中。

雙擊按鈕,自動添加單擊事件的函數,並跳轉到MFCcalculationDlg.cpp,

使用UpdateData(false)將變量值給控件,要反過來把false改爲true,這個後面會用到。爲每一個按鈕添加對應的函數。

 

 

 

實現刪除使用editv = editv.Left(editv.GetLength() - 1),Left(n)取左邊n個字符,editv.GetLength()取editv的長度,長度-1就刪掉最後一個。

實現清空使用editv = "";

 

 

「=」的功能是將控件的值傳給變量,再調用其餘計算函數計算,把計算結果傳給另外一個編輯框中。在這裏先實現顯示計算表達式。

調試結果是這個樣子的:

 

第二篇文章:C++作四則運算的MFC計算器(二)棧轉換和計算後綴表達式

相關文章
相關標籤/搜索