c++高級語言程序設計課程設計-日歷記事本_第1頁
c++高級語言程序設計課程設計-日歷記事本_第2頁
c++高級語言程序設計課程設計-日歷記事本_第3頁
c++高級語言程序設計課程設計-日歷記事本_第4頁
c++高級語言程序設計課程設計-日歷記事本_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、華蛀#力*孑高級語言程序設計(C+)»結課設計論文(2015 - 2016 年度第一學期)題目:日歷記事本院系:電子與通信工程系班級:通信1503班 制作人:目錄1引言31.1選題的目的與意義31.2工作流程32. 需求分析32.1 功能需求32.2 性能需求33. 總體設計33.1 基本設計概念和處理流程33.2 系統(tǒng)層次模塊圖43.3 對話框的制作44. 詳細操作54.1 創(chuàng)建項目54.2 詳細步驟55. 總結16日歷記事本我的點點滴滴1引言1.1選題的目的與意義隨著科技發(fā)展,很少有人繼續(xù)使用紙和筆來記事、 記賬了。網絡上出現(xiàn)了各種記 事、記賬軟件,但是很少有集各種功能于一體的多

2、功能記事本。因此,根據自己 的需求,我設計了一個多功能日歷記事本。1.2工作流程一、確定選題二、初步構思功能與界面三、 進一步精確設計各種功能,繪制功能框架圖與界面設計四、查閱資料五、功能實現(xiàn)、代碼編程六、程序完善、界面美化七、撰寫課程報告,完成答辯 PPT2. 需求分析2.1功能需求基于系統(tǒng)需求分析,該系統(tǒng)需要實現(xiàn)以下功能:1)可記錄賬單,并利用簡易計算器進行計算2)對記錄一天的攝入與鍛煉,督促合理飲食與運動3)對記錄一天的心情,寫下日記2.2性能需求軟件環(huán)境:Microsoft Visual C+ 6.03. 總體設計3.1基本設計概念和處理流程本系統(tǒng)設計為一個相對開放的單機運行系統(tǒng)。系統(tǒng)

3、界面美觀、簡單實用、易 操作。本系統(tǒng)采用Microsoft Visual C+ 6.0開發(fā),在滿足需求的前提下,將系統(tǒng)對 運行環(huán)境的性能要求降到最低。系統(tǒng)基本的流程是:登陸一界面一選擇要打開的一項(記賬、鍛煉、 日記)。3.2系統(tǒng)層次模塊圖3.3對話框的制作本系統(tǒng)由多個對話框通過按鈕的連接而制成,那么如何制作成一個對話框 呢?(1)給對話框添加按鈕(2)給對話框插入菜單(3)設置菜單類向導,選擇一個已有的類(4)給菜單設置各項屬性(5)設置對話框屬性,將菜單與對話框連接(6)給菜單各項和按鈕連接代碼(7)給按鈕連接下一個對話框(8)設計界面布局4. 詳細操作本系統(tǒng)的詳細設計是基于系統(tǒng)需求分析與

4、系統(tǒng)總體設計的結論來進行的,并采用VC6.0實現(xiàn)各模塊的功能。4.1創(chuàng)建項目創(chuàng)建一個基于對話框的MFC AppWizard(exe)項目,項目名為“我的點點滴滴”。4.2詳細步驟1. 登陸界面密碼或口令諧,諳重新輸入¥確定代碼實現(xiàn):(1) 登陸void CMyDlg:O nDlButto n()/ TODO: Add your con trol no tificati on han dler code here CStri ng s1,s2;m_edit1.GetWi ndowText(s1);m_edit2.GetWi ndowText(s2);if(s仁="李耀陽 ”

5、&& s2="864544927")CSubDlg dlg; dlg.DoModal();elseMessageBox("密碼或口令錯,請重新輸入!",”提示");(2) 退出void CMyDlg:O nTcButto n()/ TODO: Add your con trol no tificati on han dler code hereOn OK();2. 主界面代碼實現(xiàn):(1) 今日:日歷插件,顯示今天日期void CSubDlg:O nTodayButto n()/ TODO: Add your con trol n

6、o tificati on han dler code here m_date = CTime:GetCurre ntTime();UpdateData(FALSE);(2) 進入今日:連接下一個子對話框void CSubDlg:O nEn terButto n()/ TODO: Add your con trol no tificati on han dler code here CSubDlg2 dlg;dlg.DoModal();3. 進入今日代碼實現(xiàn)(此部分主要是連接子對話框):void CSubDlg2:O nButto n1()/ TODO: Add your con trol n

7、o tificati on han dler code hereCSubDlg4 dlg;dlg.DoModal();void CSubDlg2:O nButto n2()/ TODO: Add your con trol no tificati on han dler code hereCSubDlg6 dlg;dlg.DoModal();void CSubDlg2:O nButto n3()/ TODO: Add your con trol no tificati on han dler code hereCSubDlg7 dlg; dlg.DoModal();void CSubDlg2:

8、O nButto n4()/ TODO: Add your con trol no tificati on han dler code hereCSubDlg3 dlg;dlg.DoModal();補充:最前面#include "stdafx.h"#include "日歷記事本.h"#include "SubDlg2.h"#include "SubDlg3.h"#include "SubDlg4.h"#include "SubDlg6.h"#i nclude "Su

9、bDlg7.h"4我的賬單代碼實現(xiàn):(1) 今日總花銷:void CSubDlg4:O nButto n3() / TODO: Add your con trol no tificati on han dler code hereUpdateData(TRUE);m_edit8=m_edit1+m_edit2+m_edit3+m_edit4+m_edit5+m_edit6+m_edit7;UpdateData(FALSE);(2) 剩余:void CSubDlg4:O nButto n2()/ TODO: Add your con trol no tificati on han dl

10、er code hereUpdateData(TRUE);m_edit1 仁m _edit9-m_edit10;UpdateData(FALSE);(3) 計算器(連接子對話框):void CSubDlg4:O nButto n1()/ TODO: Add your con trol no tificati on han dler code hereCSubDlg5 dlg;dlg.DoModal();5. 計算器代碼實現(xiàn):(1) 各個按鈕的屬性ON_BN_CLICKED(IDC_0, OnO)ON_BN_CLICKED(IDC_EXIT, On Exit)ON_BN_CLICKED(IDC_

11、1, On1)ON_BN_CLICKED(IDC_2, On2)ON_BN_CLICKED(IDC_3, On3)ON_BN_CLICKED(IDC_4, On4)ON_BN_CLICKED(IDC_5, On5)ON_BN_CLICKED(IDC_6, On6)ON_BN_CLICKED(IDC_7, On7)ON_BN_CLICKED(IDC_8, On8)ON_BN_CLICKED(IDC_9, On9) ON_BN_CLICKED(IDC_BACK, OnBack) ON_BN_CLICKED(IDC_CHENG , OnCheng) ON_BN_CLICKED(IDC_CHU, On

12、Chu) ON_BN_CLICKED(IDC_CLEAR, OnClear) ON_BN_CLICKED(IDC_DAOSHU, OnDaoshu) ON_BN_CLICKED(IDC_DOT, OnDot) ON_BN_CLICKED(IDC_EQUAL, OnEqual) ON_BN_CLICKED(IDC_JIA, OnJia) ON_BN_CLICKED(IDC_JIAN, OnJian) ON_BN_CLICKED(IDC_JJ, OnJj) ON_BN_CLICKED(IDC_QIUYU, OnQiuyu) ON_BN_CLICKED(IDC_SQRT, OnSqrt) (2) 數

13、字鍵(以 0 為例) void CSubDlg5:On0()/ TODO: Add your control notification handler code here UpdateData(TRUE);if(cal=1)else if(m_edit="0.")m_edit=""m_edit+='0'UpdateData(FALSE);( 3) 功能鍵1) 刪除前一個數字void CSubDlg5:OnBack()/ TODO: Add your control notification handler code here Update

14、Data(TRUE);m_edit=m_edit.Left(m_edit.GetLength()-1); UpdateData(FALSE);2) 運算符號:加減乘除 void CSubDlg5:OnJia() / TODO: Add your control notification handler code here UpdateData(TRUE); m_str1=m_edit; m_edit="" sos=1; UpdateData(FALSE);void CSubDlg5:OnJian()/ TODO: Add your control notification

15、handler code here UpdateData(TRUE);m_str1=m_edit; m_edit="" sos=2;UpdateData(FALSE);void CSubDlg5:OnCheng()/ TODO: Add your control notification handler code here UpdateData(TRUE);m_str1=m_edit; m_edit="" sos=3;UpdateData(FALSE);void CSubDlg5:OnChu()/ TODO: Add your control notif

16、ication handler code here UpdateData();m_str1=m_edit; m_edit="" sos=4;UpdateData(FALSE);4) 清除void CSubDlg5:OnClear()/ TODO: Add your control notification handler code here UpdateData(TRUE);m_edit=""sos=0;UpdateData(FALSE);5) 1/x 求倒數void CSubDlg5:OnDaoshu()/ TODO: Add your control

17、 notification handler code here UpdateData(TRUE);double f1,f3; m_str1=m_edit;f1=atof(m_str1);if (f1=0)MessageBox(" 被除數不能為 0!");elsef3=1/f1; m_edit.Format("%f",f3);UpdateData(FALSE);6) 小數點 void CSubDlg5:OnDot() / TODO: Add your control notification handler code here UpdateData();m

18、_edit+="."cal=1;UpdateData(FALSE);7) 等于號 =void CSubDlg5:OnEqual()/ TODO: Add your control notification handler code here double f1,f2,f3;int f4,f5,f6;/% 運算符操作數只能是整型 switch(sos)case 1: UpdateData(TRUE); m_str2=m_edit; f1=atof(m_str1); f2=atof(m_str2); f3=f1+f2;m_edit.Format("%f",f

19、3);UpdateData(FALSE);break;case 2: UpdateData(TRUE); m_str2=m_edit; f1=atof(m_str1); f2=atof(m_str2); f3=f1-f2;m_edit.Format("%f",f3);UpdateData(FALSE); break;case 3: UpdateData(TRUE); m_str2=m_edit; f1=atof(m_str1); f2=atof(m_str2); f3=f1*f2;m_edit.Format("%f",f3);UpdateData(FAL

20、SE); break;case 4:UpdateData(TRUE); m_str2=m_edit; f1=atof(m_str1); f2=atof(m_str2); if(f2=0)MessageBox(" 被除數不能為零 !"); elsef3=f1/f2; m_edit.Format("%f",f3);UpdateData(FALSE); break;case 6:UpdateData(TRUE);m_str2=m_edit;面做相應修改f4=atoi(m_str1);/ 將字符型轉化為整型, f5=atoi(m_str2);f6=int(f4)

21、%int(f5);m_edit.Format("%d",f6);UpdateData(FALSE); break;8) +/-號void CSubDlg5:OnJj()/ TODO: Add your control notification handler code here UpdateData(TRUE);if(m_edit.Left(1)='-') / 截取 m_str1 左邊的第一個字符 '-' m_edit=m_edit.Right(m_edit.GetLength()-1);elsem_edit='-'+m_ed

22、it;/sos=5;UpdateData(FALSE);9) 求余 %void CSubDlg5:OnQiuyu()/ TODO: Add your control notification handler code here UpdateData();m_str1=m_edit;m_edit=""sos=6;UpdateData(FALSE);10) 平方根void CSubDlg5:OnSqrt()/ TODO: Add your control notification handler code here UpdateData(TRUE);double f1,f3;m

23、_str1=m_edit;f1=atof(m_str1);if(f1<0)MessageBox(" 負數沒有平方根 !");elsef3=sqrt(f1);m_edit.Format("%f",f3);UpdateData(false);6. 天天愛鍛煉代碼實現(xiàn):(1) 添加按鈕(僅以左側兩個列表框為例,右側基本相同) void CSubDlg6:O nButto n1()/ TODO: Add your con trol no tificati on han dler code here char sFromMe nuList50;m_l ist

24、1.GetText(mi_l ist1.GetCurSel(),sFromMe nuList); m_l ist2.AddStri ng(sFromMe nuList);(2) 雙擊添加void CSubDlg6:O nDblclkList1()/ TODO: Add your con trol no tificati on han dler code here char sFromList50;m_list1.GetText(m_list1.GetCurSel(),sFromList);m_l ist2.AddStri ng(sFromList);(3) 刪除按鈕void CSubDlg6:

25、O nSc1()/ TODO: Add your con trol no tificati on han dler code here CStri ng item;int index = mist2.GetCurSel(); / 獲取選定頂索引號mist2.GetText(i ndex, item);獲取選定頂的文本mist2.DeleteStri ng(i ndex);/ 刪除一項(4) 清空按鈕void CSubDlg6: On Qk1()/ TODO: Add your con trol no tificati on han dler code here while(mist2.GetCou nt()>0)mist2.DeleteStri ng(0);7. 記錄心情fi-ir,r罪常好r一扭般廠廠一SUR煤彌民存_|打幵代碼實現(xiàn):編輯框文字的保存與讀取void C

溫馨提示

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

評論

0/150

提交評論