版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
學(xué)籍管理系統(tǒng)設(shè)計 課程設(shè)計課程名稱__C++面向?qū)ο蟪绦蛟O(shè)計課程設(shè)計_題目名稱_______學(xué)籍管理系統(tǒng)_________學(xué)生學(xué)院__應(yīng)用數(shù)學(xué)學(xué)院_______2014年09月26摘要本系統(tǒng)主要用于對學(xué)生的成績進(jìn)行管理。通過本系統(tǒng),可以將各個學(xué)生的成績記錄輸入到系統(tǒng)中,保存到文件,便于查閱和相關(guān)管理。此外,該系統(tǒng)還能實(shí)現(xiàn)對學(xué)生成績記錄的顯示,查詢以及插入或刪除學(xué)生的成績記錄等功能。為實(shí)現(xiàn)本系統(tǒng),我們通過查找資料,運(yùn)用VC6.0進(jìn)行編譯,操作調(diào)試,設(shè)計實(shí)驗版,經(jīng)過不斷地修改,并運(yùn)用億圖工具畫出系統(tǒng)流程圖,最后進(jìn)行調(diào)試得出最終版學(xué)籍管理系統(tǒng)。關(guān)鍵字:VC6.0調(diào)試流程圖目錄摘要 2工作安排 3一系統(tǒng)需求分析 51.1系統(tǒng)設(shè)計的目的與意義 51.2系統(tǒng)功能需求 5二功能規(guī)格說明 52.1
系統(tǒng)功能分析 52.2功能模塊 52.3系統(tǒng)功能模塊圖 6三系統(tǒng)分析設(shè)計說明書 63.1.信息類的設(shè)計 63.2.注冊類的設(shè)計 73.3.資料登記類 73.4.成績查詢類 83.5.資料修改類 83.6資料刪除類 8四界面設(shè)計 94.1.主界面 94.2.注冊界面 94.3.登錄界面 104.4.資料登記界面 114.5.成績查詢界面 114.6.資料修改界面 124.7.資料刪除界面 124.8.排名查詢 13五代碼實(shí)現(xiàn) 145.1infortion類主界面代碼的實(shí)現(xiàn) 145.2frmNew類資料登記界面的代碼實(shí)現(xiàn) 175.3cjcx類成績查詢界面的代碼實(shí)現(xiàn) 205.4alter類資料修改界面的代碼實(shí)現(xiàn) 245.5del類資料刪除界面的代碼實(shí)現(xiàn) 265.6系統(tǒng)代碼的實(shí)現(xiàn) 29六系統(tǒng)的評價 346.1系統(tǒng)的優(yōu)點(diǎn) 346.2系統(tǒng)的缺點(diǎn) 35七系統(tǒng)的推廣 35八論文總結(jié) 35九參考文獻(xiàn) 35十成績評定 36工作安排 李煥興:查找資料,學(xué)習(xí)他人的成果,訓(xùn)練了VC6.0的運(yùn)用,進(jìn)行代碼的編寫,函數(shù)的編譯,對實(shí)驗版進(jìn)行調(diào)試,進(jìn)行修改得出最終的學(xué)籍管理系統(tǒng)。周一映:學(xué)習(xí)論文的編寫,對系統(tǒng)的界面進(jìn)行美化,學(xué)習(xí)億圖繪圖,進(jìn)行論文的撰寫,活躍氣氛。一系統(tǒng)需求分析1.1系統(tǒng)設(shè)計的目的與意義
隨著教育水平的提高,學(xué)生數(shù)量不斷增加,而各樣的考試逐漸頻繁,因此需要一個學(xué)生成績管理系統(tǒng)來對學(xué)生的成績進(jìn)行管理,減輕教務(wù)人員管理的工作量,提高效率與準(zhǔn)確率。1.2系統(tǒng)功能需求本系統(tǒng)有六個類,information類、register類、cjcx類、del類、frmNew類、alter類,進(jìn)行注冊、存儲學(xué)生的個人信息、考試科目及成績信息。有學(xué)生成績信息錄入、學(xué)生成績信息修改、學(xué)生成績信息顯示、學(xué)生成績信息刪除、學(xué)生成績信息查詢以及數(shù)據(jù)保存文件,返回等功能。二功能規(guī)格說明2.1
系統(tǒng)功能分析系統(tǒng)通過調(diào)用函數(shù)來實(shí)現(xiàn)學(xué)生注冊、學(xué)生成績信息錄入、學(xué)生成績信息修改、學(xué)生成績信息刪除、學(xué)生成績信息查詢以及數(shù)據(jù)保存文件等功能。information()類用于進(jìn)入主界面;regsiter()注冊帳號密碼;frmNew()學(xué)生成績錄入與登記;cjcx()類用于查詢學(xué)生成績;alter()類用來修改學(xué)生成績及信息;del()類用于刪除學(xué)生成績及信息;主函數(shù)main()用于調(diào)用這些類。
2.2功能模塊1.進(jìn)入主界面要求:進(jìn)入主界面,進(jìn)行下一步選擇;2.進(jìn)行注冊要求:進(jìn)行賬號注冊,填寫密碼;3.資料登記要求:學(xué)生的信息數(shù)據(jù)要以文件的形式,能實(shí)現(xiàn)學(xué)生信息的輸入與保存。4.成績查詢要求:學(xué)生的信息數(shù)據(jù)要以文件的形式,能實(shí)現(xiàn)學(xué)生信息的按姓名查詢5.資料修改要求:學(xué)生的信息數(shù)據(jù)要以文件的形式,能實(shí)現(xiàn)學(xué)生信息的按姓名修改6.資料刪除要求:學(xué)生的信息數(shù)據(jù)要以文件的形式,能實(shí)現(xiàn)學(xué)生信息的按姓名刪除7.排名查詢要求:按姓名查詢,對總分進(jìn)行排序。2.3系統(tǒng)功能模塊圖圖1系統(tǒng)功能模塊圖三系統(tǒng)分析設(shè)計說明書3.1.信息類的設(shè)計該類定義了一個float變量用來存放分?jǐn)?shù),定義了設(shè)置按鈕1至5的函數(shù) information-information:float+information()+OnButton1():void+OnButton2():void+OnButton3():void+OnButton4():void+OnButton5():void圖2信息類UML圖3.2.注冊類的設(shè)計該類定義了一個float類型的變量,定義了按鈕2和按鈕3成員的函數(shù) register-register:float+register()+OnButton2():void+OnButton3():void圖3信息類UML圖3.3.資料登記類該類定義了一個float類型的變量,定義了按鈕5和按鈕4成員的函數(shù) frmNew6-frmNew6:float+OnButton5():void+OnButton4():void圖4frmNew6類UML圖3.4.成績查詢類該類定義了一個float類型的變量,定義了設(shè)置按鈕2和按鈕1成員的函數(shù)。 cjcx-cjcx:float+cjcx()+OnButton2():void+OnButton1():void圖4cjcx類UML圖3.5.資料修改類該類定義了一個float類型的變量,定義了按鈕2和按鈕4成員的函數(shù)alter-alter:float+OnButton2():void;+OnButton4():void圖5alter類UML圖3.6資料刪除類該該類定義了一個float類型的變量,定義了按鈕2和按鈕4成員的函數(shù)alter-alter:float+OnButton2():void;+OnButton4():void圖6del類UML圖四界面設(shè)計4.1.主界面該界面有登錄、注冊、退出系統(tǒng)三個按鈕,點(diǎn)擊不同按鈕進(jìn)入不同界面,可以直接填寫姓名、學(xué)號、密碼進(jìn)行登錄,也可以進(jìn)行注冊,還可以直接退出。圖7學(xué)籍管理系統(tǒng)主界面4.2.注冊界面在主界面點(diǎn)擊注冊后會進(jìn)入注冊界面,該界面有注冊、返回兩個按鈕,輸入姓名、學(xué)號、密碼進(jìn)行注冊。圖8注冊界面4.3.登錄界面登錄后進(jìn)入的界面,有資料登記、成績查詢、排名查詢、資料修改、資料刪除、退出系統(tǒng)六個按鈕,點(diǎn)擊不同按鈕進(jìn)入不同界面。圖9登錄后界面4.4.資料登記界面在登錄界面點(diǎn)擊資料登記按鈕進(jìn)入該界面,需填入姓名、學(xué)號、性別、班級、科目,并有添加、保存、返回三個按鈕。圖10資料登記界面4.5.成績查詢界面在登錄界面點(diǎn)擊成績查詢按鈕后進(jìn)入該界面,有查詢、返回兩個按鈕。圖11成績查詢界面4.6.資料修改界面在登錄界面點(diǎn)擊資料修改后進(jìn)入該界面,可以對姓名、學(xué)號、班級、性別、科目成績進(jìn)行修改,并有確定、返回兩個按鈕。圖12資料修改界面4.7.資料刪除界面在登錄界面點(diǎn)擊資料刪除按鈕進(jìn)入該按鈕,有刪除、返回兩個按鈕,可以對學(xué)生信息進(jìn)行刪除。圖13資料刪除界面4.8.排名查詢在登錄界面點(diǎn)擊排名查詢按鈕后進(jìn)入該界面,通過總分大小的比較,按總分有高到低進(jìn)行排名圖14排名查詢界面五代碼實(shí)現(xiàn)5.1infortion類主界面代碼的實(shí)現(xiàn)//information.cpp:implementationfile//#include"stdafx.h"#include"test2.h"#include"information.h"#include"alter.h"#include"check.h"#include"cjcx.h"#include"del1.h"#include"frmNew.h"#ifdef_DEBUG#definenewDEBUG_NEW#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#endif///////////////////////////////////////////////////////////////////////////////informationdialoginformation::information(CWnd*pParent/*=NULL*/) :CDialog(information::IDD,pParent){ //{{AFX_DATA_INIT(information) //NOTE:theClassWizardwilladdmemberinitializationhere //}}AFX_DATA_INIT}voidinformation::DoDataExchange(CDataExchange*pDX){ CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(information) //NOTE:theClassWizardwilladdDDXandDDVcallshere //}}AFX_DATA_MAP}BEGIN_MESSAGE_MAP(information,CDialog) //{{AFX_MSG_MAP(information) ON_BN_CLICKED(IDC_BUTTON2,OnButton2) ON_BN_CLICKED(IDC_BUTTON3,OnButton3) ON_BN_CLICKED(IDC_BUTTON1,OnButton1) ON_BN_CLICKED(IDC_BUTTON4,OnButton4) ON_BN_CLICKED(IDC_BUTTON5,OnButton5) //}}AFX_MSG_MAPEND_MESSAGE_MAP()///////////////////////////////////////////////////////////////////////////////informationmessagehandlersvoidinformation::OnButton2(){alterobj;this->OnCancel();//關(guān)閉當(dāng)前窗口obj.DoModal(); }voidinformation::OnButton3(){frmNewobj;this->OnCancel();//關(guān)閉當(dāng)前窗口obj.DoModal(); }voidinformation::OnButton1(){cjcxobj;this->OnCancel();//關(guān)閉當(dāng)前窗口obj.DoModal();}voidinformation::OnButton4(){delobj;this->OnCancel();//關(guān)閉當(dāng)前窗口obj.DoModal(); }voidinformation::OnButton5(){this->OnOK();}register類注冊界面代碼的實(shí)現(xiàn)//register.cpp:implementationfile//#include"stdafx.h"#include"test2.h"#include"register.h"#include"fst.h"#include"CTestDlg.h"#ifdef_DEBUG#definenewDEBUG_NEW#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#endif///////////////////////////////////////////////////////////////////////////////registerdialogregister::register(CWnd*pParent/*=NULL*/) :CDialog(register::IDD,pParent){ //{{AFX_DATA_INIT(register) m_name0=_T(""); m_ID0=0.0f; m_mima0=_T(""); //}}AFX_DATA_INIT}voidregister::DoDataExchange(CDataExchange*pDX){ CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(register) DDX_Text(pDX,IDC_EDIT1,m_name0); DDX_Text(pDX,IDC_EDIT2,m_ID0); DDX_Text(pDX,IDC_EDIT3,m_mima0); //}}AFX_DATA_MAP}BEGIN_MESSAGE_MAP(register,CDialog) //{{AFX_MSG_MAP(register) ON_BN_CLICKED(IDC_BUTTON2,OnButton2) ON_BN_CLICKED(IDC_BUTTON3,OnButton3) //}}AFX_MSG_MAPEND_MESSAGE_MAP()///////////////////////////////////////////////////////////////////////////////registermessagehandlersvoidregister::OnButton2(){structstuInfo stu; this->UpdateData(true); strcpy(,m_name0); stu.ID=stu.ID0;strcpy(stu.mima,m_mima0); ofstreamos("data.txt",ios::app); os.write((char*)&stu,sizeof(stu)); os.close(); MessageBox("注冊成功!"); }voidregister::OnButton3(){CTestDlgobj;this->OnCancel();//關(guān)閉當(dāng)前窗口obj.DoModal(); }5.2frmNew類資料登記界面的代碼實(shí)現(xiàn)//frmNew.cpp:implementationfile//#include"stdafx.h"#include"test2.h"#include"frmNew.h"#include"information.h"#include"fst.h"#include"fstream.h"#ifdef_DEBUG#definenewDEBUG_NEW#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#endif///////////////////////////////////////////////////////////////////////////////frmNewdialogfrmNew::frmNew(CWnd*pParent/*=NULL*/) :CDialog(frmNew::IDD,pParent){ //{{AFX_DATA_INIT(frmNew) m_name=_T(""); m_sex=_T(""); m_classname=_T(""); m_ID=0.0f; m_math=0.0f; m_English=0.0f; m_computer=0.0f; m_paiming=0.0f; //}}AFX_DATA_INIT}voidfrmNew::DoDataExchange(CDataExchange*pDX){ CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(frmNew) DDX_Control(pDX,IDC_LIST1,m_list); DDX_Text(pDX,IDC_EDIT1,m_name); DDX_Text(pDX,IDC_EDIT6,m_sex); DDX_Text(pDX,IDC_EDIT7,m_classname); DDX_Text(pDX,IDC_EDIT8,m_ID); DDX_Text(pDX,IDC_EDIT2,m_math); DDX_Text(pDX,IDC_EDIT11,m_English); DDX_Text(pDX,IDC_EDIT9,m_computer); //DDX_Text(pDX,IDC_EDIT10,m_paiming); //}}AFX_DATA_MAP}BOOLfrmNew::OnInitDialog(){ CDialog::OnInitDialog(); CStringstrHeader[8]={"姓名","性別","班級","學(xué)號","數(shù)學(xué)","英語","C++","總分"}; for(intnCol=0;nCol<8;nCol++) m_list.InsertColumn(nCol,strHeader[nCol],LVCFMT_LEFT,60); returnTRUE;}BEGIN_MESSAGE_MAP(frmNew,CDialog) //{{AFX_MSG_MAP(frmNew) ON_BN_CLICKED(IDC_BUTTON1,OnButton1) ON_NOTIFY(NM_CLICK,IDC_LIST1,OnClickList1) ON_BN_CLICKED(IDC_BUTTON5,OnButton5) ON_BN_CLICKED(IDC_BUTTON6,OnButton6) //}}AFX_MSG_MAPEND_MESSAGE_MAP()///////////////////////////////////////////////////////////////////////////////frmNewmessagehandlersvoidfrmNew::OnButton1(){this->UpdateData(true);intnItem=m_list.GetItemCount(); CStringstr4,str5,str6,str7,str3;str4.Format("%5.0f",this->m_math); str5.Format("%5.0f",this->m_English); str6.Format("%5.0f",this->m_computer); str7.Format("%5.0f",this->m_math+this->m_English+this->m_computer); //str8.Format("%5.0f",this->m_paiming); str3.Format("%5.0f",this->m_ID);m_list.InsertItem(nItem,this->m_name);m_list.SetItemText(nItem,1,this->m_sex);m_list.SetItemText(nItem,2,this->m_classname);m_list.SetItemText(nItem,3,str3);m_list.SetItemText(nItem,4,str4); m_list.SetItemText(nItem,5,str5); m_list.SetItemText(nItem,6,str6);m_list.SetItemText(nItem,7,str7);//m_list.SetItemText(nItem,8,str8);}voidfrmNew::OnClickList1(NMHDR*pNMHDR,LRESULT*pResult){ //TODO:Addyourcontrolnotificationhandlercodehere *pResult=0;}voidfrmNew::OnButton5(){informationobj;this->OnCancel();//關(guān)閉當(dāng)前窗口obj.DoModal(); }voidfrmNew::OnButton6(){ intfindFlag=0;structstuInfo stu; this->UpdateData(true); strcpy(,m_name); stu.ID=m_ID; strcpy(stu.classname,m_classname); strcpy(stu.sex,m_sex); stu.math=m_math; stu.English=m_English; puter=m_computer; ofstreamos("data.txt",ios::app); os.write((char*)&stu,sizeof(stu)); os.close(); this->MessageBox("保存成功!"); UpdateData(FALSE); }5.3cjcx類成績查詢界面的代碼實(shí)現(xiàn)//check.cpp:implementationfile//#include"stdafx.h"#include"test2.h"#include"check.h"#include"information.h"#include"fstream.h"#include"fst.h"#include"frmNew.h"#ifdef_DEBUG#definenewDEBUG_NEW#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#endif///////////////////////////////////////////////////////////////////////////////checkdialogcheck::check(CWnd*pParent/*=NULL*/) :CDialog(check::IDD,pParent){ //{{AFX_DATA_INIT(check) m_name=_T(""); m_ID=0.0f; m_classname=_T(""); m_score=0.0f; m_sex=_T(""); //}}AFX_DATA_INIT}voidcheck::DoDataExchange(CDataExchange*pDX){ CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(check) DDX_Text(pDX,IDC_EDIT1,m_name); DDX_Text(pDX,IDC_EDIT2,m_ID); DDX_Text(pDX,IDC_EDIT3,m_classname); DDX_Text(pDX,IDC_EDIT4,m_score); DDX_Text(pDX,IDC_EDIT6,m_sex); //}}AFX_DATA_MAP}BEGIN_MESSAGE_MAP(check,CDialog) //{{AFX_MSG_MAP(check) ON_BN_CLICKED(IDC_BUTTON5,OnButton5) ON_BN_CLICKED(IDC_BUTTON4,OnButton4) ON_EN_CHANGE(IDC_EDIT3,OnChangeEdit3) ON_BN_CLICKED(IDC_BUTTON6,OnButton6) //}}AFX_MSG_MAPEND_MESSAGE_MAP()///////////////////////////////////////////////////////////////////////////////checkmessagehandlersvoidcheck::OnButton5(){informationobj;this->OnCancel();//關(guān)閉當(dāng)前窗口obj.DoModal(); }voidcheck::OnButton4(){ intfindFlag=0;structstuInfo stu; this->UpdateData(true); strcpy(,m_name); stu.ID=m_ID; strcpy(stu.classname,m_classname); strcpy(stu.sex,m_sex); //stu.score=m_score; ofstreamos("data.txt",ios::app); os.write((char*)&stu,sizeof(stu)); os.close(); if(m_name=="") { findFlag=1; this->MessageBox("姓名空白!"); } if(m_ID==0) { findFlag=1; this->MessageBox("學(xué)號空白!"); } if(m_classname=="") { findFlag=1; this->MessageBox("班級空白!"); } if(m_sex=="") { findFlag=1; this->MessageBox("性別空白!"); } if(m_score==0) { findFlag=1; this->MessageBox("成績空白!"); } if(findFlag==0) this->MessageBox("保存成功!"); UpdateData(FALSE); }voidcheck::OnChangeEdit3(){ //TODO:IfthisisaRICHEDITcontrol,thecontrolwillnot //sendthisnotificationunlessyouoverridetheCDialog::OnInitDialog() //functionandcallCRichEditCtrl().SetEventMask() //withtheENM_CHANGEflagORedintothemask. //TODO:Addyourcontrolnotificationhandlercodehere }voidcheck::OnButton6(){frmNewobj;this->OnCancel();//關(guān)閉當(dāng)前窗口obj.DoModal(); }5.4alter類資料修改界面的代碼實(shí)現(xiàn)//alter.cpp:implementationfile//#include"stdafx.h"#include"test2.h"#include"alter.h"#include"fstream.h"#include"information.h"#include"fst.h"#ifdef_DEBUG#definenewDEBUG_NEW#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#endif///////////////////////////////////////////////////////////////////////////////alterdialogalter::alter(CWnd*pParent/*=NULL*/) :CDialog(alter::IDD,pParent){ //{{AFX_DATA_INIT(alter) m_name1=_T(""); m_ID1=0.0f; m_sex1=_T(""); m_classname1=_T(""); m_math1=0.0f; m_English1=0.0f; m_computer1=0.0f; //}}AFX_DATA_INIT}voidalter::DoDataExchange(CDataExchange*pDX){ CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(alter) DDX_Text(pDX,IDC_EDIT1,m_name1); DDX_Text(pDX,IDC_EDIT2,m_ID1); DDX_Text(pDX,IDC_EDIT4,m_sex1); DDX_Text(pDX,IDC_EDIT5,m_classname1); DDX_Text(pDX,IDC_EDIT3,m_math1); DDX_Text(pDX,IDC_EDIT9,m_English1); DDX_Text(pDX,IDC_EDIT10,m_computer1); //}}AFX_DATA_MAP}BEGIN_MESSAGE_MAP(alter,CDialog) //{{AFX_MSG_MAP(alter) ON_BN_CLICKED(IDC_BUTTON2,OnButton2) ON_BN_CLICKED(IDC_BUTTON4,OnButton4) //}}AFX_MSG_MAPEND_MESSAGE_MAP()///////////////////////////////////////////////////////////////////////////////altermessagehandlersvoidalter::OnButton2(){unsignedlongposition=NULL; intfindFlag=0; this->UpdateData(true); structstuInfostu; ifstreamis("data.txt"); while(is.eof()==0) { position=is.tellg(); is.read((char*)&stu,sizeof(stu)); CStringsName; sName.Format("%s",); if(sName==this->m_name1) {findFlag=1; break; } } is.close(); if(findFlag==0){ this->MessageBox("此姓名數(shù)據(jù)不存在!"); return;}ofstreamos("data.txt",ios::ate); os.seekp(position); strcpy(,m_name1); stu.ID=m_ID1; strcpy(stu.classname,m_classname1); strcpy(stu.sex,m_sex1); stu.math=m_math1; stu.English=m_English1; puter=m_computer1; os.write((char*)&stu,sizeof(stu)); os.close(); this->MessageBox("修改成功"); }voidalter::OnButton4(){informationobj;this->OnCancel();//關(guān)閉當(dāng)前窗口obj.DoModal(); }5.5del類資料刪除界面的代碼實(shí)現(xiàn)//delete.cpp:implementationfile//#include"stdafx.h"#include"test2.h"#include"delete.h"#include"fst.h"#ifdef_DEBUG#definenewDEBUG_NEW#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#endif///////////////////////////////////////////////////////////////////////////////deletedialogdelete::delete(CWnd*pParent/*=NULL*/) :CDialog(delete::IDD,pParent){ //{{AFX_DATA_INIT(delete) m_name3=_T(""); m_ID3=0.0f; m_classname3=_T(""); m_sex3=_T(""); m_score3=0.0f; //}}AFX_DATA_INIT}voiddelete::DoDataExchange(CDataExchange*pDX){ CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(delete) DDX_Text(pDX,IDC_EDIT1,m_name3); DDX_Text(pDX,IDC_EDIT2,m_ID3); DDX_Text(pDX,IDC_EDIT3,m_classname3); DDX_Text(pDX,IDC_EDIT4,m_sex3); DDX_Text(pDX,IDC_EDIT6,m_score3); //}}AFX_DATA_MAP}BEGIN_MESSAGE_MAP(delete,CDialog) //{{AFX_MSG_MAP(delete) ON_BN_CLICKED(IDC_BUTTON5,OnButton5) ON_BN_CLICKED(IDC_BUTTON4,OnButton4) //}}AFX_MSG_MAPEND_MESSAGE_MAP()///////////////////////////////////////////////////////////////////////////////deletemessagehandlersvoiddelete::OnButton5(){informationobj;this->OnCancel();//關(guān)閉當(dāng)前窗口obj.DoModal(); }voiddelete::OnButton4(){unsignedlongposition=NULL; intfindFlag=0; this->UpdateData(true); structstuInfostu; ifstreamis("data.txt"); while(is.eof()==0) { position=is.tellg(); is.read((char*)&stu,sizeof(stu)); CStringsName; sName.Format("%s",); if(sName==this->m_name3) {findFlag=1; break; } } is.close(); if(findFlag==0){ this->MessageBox("此姓名不存在,刪除失敗!"); return;}ofstreamos("data.txt",ios::ate); os.seekp(position); strcpy(,""); stu.ID=0; strucpy(stu.classname,""); strucpy(stu.sex,""); stu.score=0; os.write((char*)&stu,sizeof(stu)); os.close(); this->MessageBox("刪除成功"); }5.6系統(tǒng)代碼的實(shí)現(xiàn)//test2Dlg.cpp:implementationfile//#include"stdafx.h"#include"test2.h"#include"test2Dlg.h"#include"fst.h"#include"information.h"#include"fstream.h"#include"register0.h"#ifdef_DEBUG#definenewDEBUG_NEW#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#endif///////////////////////////////////////////////////////////////////////////////CAboutDlgdialogusedforAppAboutclassCAboutDlg:publicCDialog{public: CAboutDlg();//DialogData //{{AFX_DATA(CAboutDlg) enum{IDD=IDD_ABOUTBOX}; //}}AFX_DATA //ClassWizardgeneratedvirtualfunctionoverrides //{{AFX_VIRTUAL(CAboutDlg) protected: virtualvoidDoDataExchange(CDataExchange*pDX);//DDX/DDVsupport //}}AFX_VIRTUAL//Implementationprotected: //{{AFX_MSG(CAboutDlg) //}}AFX_MSG DECLARE_MESSAGE_MAP()};CAboutDlg::CAboutDlg():CDialog(CAboutDlg::IDD){ //{{AFX_DATA_INIT(CAboutDlg) //}}AFX_DATA_INIT}voidCAboutDlg::DoDataExchange(CDataExchange*pDX){ CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CAboutDlg) //}}AFX_DATA_MAP}BEGIN_MESSAGE_MAP(CAboutDlg,CDialog) //{{AFX_MSG_MAP(CAboutDlg) //Nomessagehandlers //}}AFX_MSG_MAPEND_MESSAGE_MAP()///////////////////////////////////////////////////////////////////////////////CTest2DlgdialogCTest2Dlg::CTest2Dlg(CWnd*pParent/*=NULL*/) :CDialog(CTest2Dlg::IDD,pParent){ //{{AFX_DATA_INIT(CTest2Dlg) m_name00=_T(""); m_ID00=0.0f; m_mima00=_T(""); //}}AFX_DATA_INIT //NotethatLoadIcondoesnotrequireasubsequentDestroyIconinWin32 m_hIcon=AfxGetApp()->LoadIcon(IDR_MAINFRAME);}voidCTest2Dlg::DoDataExchange(CDataExchange*pDX){ CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CTest2Dlg) DDX_Text(pDX,IDC_EDIT1,m_name00); DDX_Text(pDX,IDC_EDIT2,m_ID00); DDX_Text(pDX,IDC_EDIT8,m_mima00); //}}AFX_DATA_MAP}BEGIN_MESSAGE_MAP(CTest2Dlg,CDialog) //{{AFX_MSG_MAP(CTest2Dlg) ON_WM_SYSCOMMAND() ON_WM_PAINT() ON_WM_QUERYDRAGICON() ON_BN_CLICKED(IDC_BUTTON2,OnButton2) ON_BN_CLICKED(IDC_BUTTON1,OnButton1) ON_EN_CHANGE(IDC_EDIT1,OnChangeEdit1) ON_BN_CLICKED(IDC_BUTTON3,OnButton3) //}}AFX_MSG_MAPEND_MESSAGE_MAP()///////////////////////////////////////////////////////////////////////////////CTest2DlgmessagehandlersBOOLCTest2Dlg::OnInitDialog(){ CDialog::OnInitDialog(); //Add"About..."menuitemtosystemmenu. //IDM_ABOUTBOXmustbeinthesystemcommandrange. ASSERT((IDM_ABOUTBOX&0xFFF0)==IDM_ABOUTBOX); ASSERT(IDM_ABOUTBOX<0xF000); CMenu*pSysMenu=GetSystemMenu(FALSE); if(pSysMenu!=NULL) { CStringstrAboutMenu; strAboutMenu.LoadString(IDS_ABOUTBOX); if(!strAboutMenu.IsEmpty()) { pSysMenu->AppendMenu(MF_SEPARATOR); pSysMenu->AppendMenu(MF_STRING,IDM_ABOUTBOX,strAboutMenu); } } //Settheiconforthisdialog.Theframeworkdoesthisautomatically //whentheapplication'smainwindowisnotadialog SetIcon(m_hIcon,TRUE); //Setbigicon SetIcon(m_hIcon,FALSE); //Setsmallicon //TODO:Addextrainitializationhere returnTRUE;//returnTRUEunlessyousetthefocustoacontrol}voidCTest2Dlg::OnSysCommand(UINTnID,LPARAMlParam){ if((nID&0xFFF0)==IDM_ABOUTBOX) { CAboutDlgdlgAbout; dlgAbout.DoModal(); } else { CDialog::OnSysCommand(nID,lParam); }}//Ifyouaddaminimizebuttontoyourdialog,youwillneedthecodebelow//todrawtheicon.ForMFCapplicationsusingthedocument/viewmodel,//thisisautomaticallydoneforyoubytheframework.voidCTest2Dlg::OnPaint(){ if(IsIconic()) { CPaintDCdc(this);//devicecontextforpainting SendMessage(WM_ICONERASEBKGND,(WPARAM)dc.GetSafeHdc(),0); //Centericoninclientrectangle intcxIcon=GetSystemMetrics(SM_CXICON); intcyIco
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 45082-2024物聯(lián)網(wǎng)泛終端操作系統(tǒng)總體技術(shù)要求
- 銀行合規(guī)管理制度實(shí)施監(jiān)督
- 酒店餐飲部食品安全管理制度
- 再論心肺復(fù)蘇培訓(xùn)課件
- 母嬰安全主題培訓(xùn)高危孕產(chǎn)婦管理課件
- 【大學(xué)課件】基于傅立葉變換的數(shù)字水印嵌入技術(shù)
- 陜西省渭南市臨渭區(qū)2023-2024學(xué)年七年級上學(xué)期期末考試數(shù)學(xué)試卷(含答案)
- 全國法制宣傳日主題-物理-自然科學(xué)-專業(yè)資料
- 【大學(xué)課件】物流設(shè)備與應(yīng)用技術(shù)
- 山南市2025屆高考語文押題試卷含解析
- 學(xué)校網(wǎng)絡(luò)合同范例
- 2022-2023學(xué)年上海市浦東區(qū)高二(上)期末語文試卷
- 期末綜合卷(含答案) 2024-2025學(xué)年蘇教版數(shù)學(xué)六年級上冊
- 2025春夏運(yùn)動戶外行業(yè)趨勢白皮書
- 中醫(yī)筋傷的治療
- 【MOOC】英文技術(shù)寫作-東南大學(xué) 中國大學(xué)慕課MOOC答案
- 護(hù)理產(chǎn)科健康教育
- 《〈論語〉十二章》說課稿 2024-2025學(xué)年統(tǒng)編版高中語文選擇性必修上冊
- 2024年P(guān)E工程師培訓(xùn)教材:深入淺出講解
- 2024年21起典型火災(zāi)案例及消防安全知識專題培訓(xùn)(消防月)
- 人教版四年級上冊數(shù)學(xué)【選擇題】專項練習(xí)100題附答案
評論
0/150
提交評論