基于VC界面計算器的設(shè)計_第1頁
基于VC界面計算器的設(shè)計_第2頁
基于VC界面計算器的設(shè)計_第3頁
基于VC界面計算器的設(shè)計_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、日期:2009-3-8 基于VC界面計算器的設(shè)計一、 預(yù)計設(shè)計:基于VC界面設(shè)計一科學(xué)型計算器,能實現(xiàn)基本加減乘除外,還可以實現(xiàn)各種函數(shù)的求值運算,以及進(jìn)制轉(zhuǎn)換,數(shù)據(jù)的存儲(MS,MR,MC,M+);二、 尚未完善按鍵顏色未設(shè),其他功能鍵F-E,dms,Exp,不知其何意未設(shè)功能。三、 界面如下: 四、設(shè)計大概思路:1.用MFC AppWizard(exe)創(chuàng)建應(yīng)用程序框架,在創(chuàng)建的對話框中布置各個控件如上圖。2.對各個控件編程。數(shù)字鍵消息響應(yīng):0-9,A-FIf(文本框內(nèi)容 = “0” && 未按下.) 輸入時清0將按下的鍵值加到m_Strvalue,根據(jù)Flag標(biāo)志,文本框

2、值賦m_value1,m_value2;符號鍵消息響應(yīng):+ - * / or add xor mod not將文本框當(dāng)前字符利用atof(m_Strvalue)轉(zhuǎn)成float型,并存入m_value1中,,再清空m_Strvalue以接收第二操作數(shù),并設(shè)置相應(yīng)的符號位標(biāo)志Flag。等號鍵:由Flag 與m_value1,m_value2的值計算結(jié)果并更新顯示。符號鍵+/-:判斷當(dāng)前數(shù)是否為負(fù)數(shù),若是則去掉-,否則加上-;各進(jìn)制間的轉(zhuǎn)換:主要函數(shù):itoa(_tcstoul(m_Strvalue, 0, head1),s,10);通過m_oldRedio決定head1的參數(shù)。Backspce:利

3、用Cstring類取其左邊LEN 1 個字符,可達(dá)到消鍵的目的。五、總結(jié)1. 編程規(guī)范:If,switch與()間加空格,后面語句塊都應(yīng)加;頭文件注釋:/* Copyright (C), 2009, 博嘉圣 FileName: test.cpp Author:HZP Version : 1.1 Date: 2009-3-7 Description: / 模塊描述 Version: / 版本信息 Function List: / 主要函數(shù)及其功能 1. - History: 1.Data : 2009-3-2 Author : zp_huang Modification: OnBin(),OnH

4、ex(),OnEight()函數(shù),換掉函數(shù)體, 增加 itoa(_tcstoul(m_Strvalue, 0, head1),s,2)來實現(xiàn)轉(zhuǎn)換。 other:tcstoul():字符串轉(zhuǎn)換成才整型*/函數(shù)注釋:/*Fauction : *Descripation:*Call : *Call by: *Input : *Output : *Return : */不相關(guān)語句間可適當(dāng)加空行。Notice :邊寫程序要邊注釋。2. 關(guān)于VC編程:雙擊控件設(shè)置消息響應(yīng)函數(shù),當(dāng)按鍵發(fā)出有用消息時,通過系統(tǒng)自動調(diào)用該函數(shù)??稍O(shè)置按鍵關(guān)聯(lián)的消息變量(本程序用它實現(xiàn)了控件的禁能與使能)。 靜態(tài)文本框要改變它的

5、ID號方可接受外部點擊事件。 類內(nèi)初始化在MyDlg:OnInitDialog()中。組合框量m_Radio的值要更新方能得到當(dāng)選按紐的狀態(tài)。UpdateData();3. VC函數(shù)m_ONA.EnableWindow(0);UpdateData(FALSE);(0:值送入編輯框。1:從編輯框接收數(shù)據(jù))Cstring類 .Empty() .Format(_T("%f"), Num); 格式化數(shù)據(jù). Right(m_Strvalue.GetLength()-1) 得到右邊LEN 1 個字符atof(m_Strvalue) 字符串àfloat 4邊緣處理 對.0+/-等按鍵要考慮其特殊的輸入,程序中利用判斷語句實現(xiàn)。六、存在問題:1.因攛改了一些系統(tǒng)的語句導(dǎo)致每次關(guān)閉程序時會出現(xiàn)如下提示:查看文件afx.inl發(fā)現(xiàn)是斷言判斷出錯。解決:刪除Debug文件夾,再編譯運行,即可。2.在設(shè)計組合框時原方案是想通過定義一個long型,通過設(shè)置它的各個位來設(shè)置相應(yīng)控件的禁使能。以解決當(dāng)按下各個不同進(jìn)制單選框時,各數(shù)字鍵不同狀態(tài)的問題。后來發(fā)現(xiàn)此做法實現(xiàn)困難

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論