版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
PAGE20vc++學(xué)籍管理系統(tǒng)報(bào)告需求分析采用VC++設(shè)計(jì)一款學(xué)生學(xué)籍管理軟件,采用視窗程序,能夠?qū)W(xué)生的信息,如:學(xué)號、姓名、性別、民族、出生年月、政治面貌、生源地、籍貫、班級、專業(yè)、系別等進(jìn)行操作。操作包括從Excel導(dǎo)入、新增、并且能夠?qū)?nèi)容保存到Excel文件中去。1、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)記錄所有的耗材信息,采用結(jié)構(gòu)體如下所示:structdata0 { CStringdata[11]; }datas[255]; intdatanum;其中datanum記錄當(dāng)前學(xué)生的數(shù)量結(jié)構(gòu)體中每個(gè)項(xiàng)目data表示具體的內(nèi)容,比如某個(gè)學(xué)生的姓名等情況。測試情況:采用測試的excel文件,用戶導(dǎo)入內(nèi)容,顯示如下:圖SEQ圖_\*ARABIC1Excel文件內(nèi)容程序設(shè)計(jì)程序函數(shù)說明從外部excel文件載入信息voidCMyDlg::OnLoad()//從excel載入信息整體函數(shù)的初始化voidCMyDlg::initial()//初始化在列表框中顯示所有的內(nèi)容voidCMyDlg::initial()//初始化點(diǎn)擊顯示詳細(xì)內(nèi)容的按鈕,進(jìn)行詳細(xì)內(nèi)容的顯示voidCMyDlg::Onshowdetail()//查看詳細(xì)信息點(diǎn)擊新增內(nèi)容按鈕,新增一個(gè)內(nèi)容voidCMyDlg::Onaddnew()//新增信息點(diǎn)擊保存按鈕,將當(dāng)前內(nèi)容保存到excel文件中voidCMyDlg::OnSavedata()//保存信息程序流程圖如下所示初始化初始化從Excel導(dǎo)入顯示顯示所有的內(nèi)容打開對話框顯示詳細(xì)內(nèi)容新增內(nèi)容顯示保存按鈕選擇保存的excel保存圖2程序流程圖調(diào)試分析遇到問題主要遇到的問題包括如何打開excel文件。一般的文件讀寫方式,是直接讀寫,通過用戶輸入文件名進(jìn)行讀、寫。但是當(dāng)數(shù)據(jù)文件和程序文件不在一起的時(shí)候,就需要寫入全部的地址,造成了整個(gè)程序友好性有限。通過學(xué)習(xí)發(fā)現(xiàn)了一個(gè)CFile的函數(shù),可以方便的打開某個(gè)界面,選擇某個(gè)文件,并且獲取全部路徑,方便了讀寫的操作,大大加強(qiáng)了使用的方便性。使用說明運(yùn)行軟件,顯示如下圖所示:圖3程序初始界面2、點(diǎn)擊載入信息按鈕,彈出選擇excel文件對話框圖4載入Excel內(nèi)容3、載入后顯示圖5載入內(nèi)容后顯示點(diǎn)擊某個(gè)項(xiàng)目圖6顯示詳細(xì)內(nèi)容點(diǎn)擊按鈕,顯示詳細(xì)信息圖7顯示詳細(xì)內(nèi)容點(diǎn)擊新增按鈕,顯示新增對話框圖8顯示詳細(xì)信息確定后,顯示內(nèi)容在列表框中圖9新增后顯示保存信息到Excel文件中圖10保存Excel圖11保存成功則Excel文件中如下所示:圖12保存在Excel中內(nèi)容測試結(jié)果測試結(jié)果中,外部excel文件如下圖所示:圖13Excel中內(nèi)容導(dǎo)入后顯示到程序中如下所示:圖14載入后程序內(nèi)容可見導(dǎo)入excel文件正常在程序內(nèi)部輸入如下所示:圖15新增內(nèi)容成功導(dǎo)入如下所示:圖16成功導(dǎo)入后內(nèi)容新增內(nèi)容運(yùn)行正常。心得體會通過此次程序的完成,基本掌握了VC++小型程序的制作方法,了解了如何完成一個(gè)數(shù)據(jù)庫類型的軟件的方法。并且通過獨(dú)立的學(xué)習(xí),克服了種種困難,這種經(jīng)歷是難得的,會為我以后的學(xué)習(xí)與工作打下良好的基礎(chǔ)。附錄主函數(shù)學(xué)籍管理軟件Dlg.cpp內(nèi)容voidCMyDlg::OnLoad()//從excel載入信息{ CFileDialogdlg(TRUE,"xls",NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"RadFile(*.xls)|*.xls||");//打開文件夾 CStringArrayRows,Column; inti,j,num1; if(dlg.DoModal()==IDOK) { CSpreadSheetSS(dlg.GetPathName(),"Sheet1"); CStringArrayRows,Column;//將數(shù)據(jù)存儲到全局?jǐn)?shù)組里面 num1=SS.GetTotalRows()-1; datanum=num1; for(i=0;i<=SS.GetTotalRows();i++) { SS.ReadRow(Rows,i+1); if(i>0) { for(j=0;j<11;j++) { datas[i-1].data[j]=Rows.GetAt(j); } datas[i-1].data[0]=datas[i-1].data[0].Left(10); } } showall(); }}voidCMyDlg::initial()//初始化{ datanum=0; m_list.InsertColumn(0,"學(xué)號",LVCFMT_LEFT,100,0); m_list.InsertColumn(1,"姓名",LVCFMT_LEFT,70,0); m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT);}voidCMyDlg::showall()//顯示所有內(nèi)容{ inti,j; m_list.DeleteAllItems(); CStringstr; for(i=0;i<datanum;i++) { m_list.InsertItem(i,""); m_list.SetItemText(i,0,datas[i].data[0]); m_list.SetItemText(i,1,datas[i].data[1]); }}voidCMyDlg::Onshowdetail()//查看詳細(xì)信息{ showdetailsdlg; POSITIONpos; intnum,i; pos=m_list.GetFirstSelectedItemPosition(); num=(int)m_list.GetNextSelectedItem(pos); for(i=0;i<11;i++) { dlg.words[i]=datas[num].data[i]; } dlg.SIN=1; dlg.DoModal(); }voidCMyDlg::Onaddnew()//新增信息{ showdetailsdlg; dlg.SIN=0; dlg.DoModal(); if(dlg.SURE==1) { inti; for(i=0;i<11;i++) { datas[datanum].data[i]=dlg.words[i]; } datanum++; showall(); }}voidCMyDlg::OnSavedata()//保存信息{ CFileDialogdlg(FALSE,"xls",NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"RadFile(*.xls)|*.xls||");//打開文件夾 CStringArrayRows,Column; inti,j,num1; if(dlg.DoModal()==IDOK) { CSpreadSheetSS(dlg.GetPathName(),"Sheet1"); CStringArraysampleArray,testRow; sampleArray.RemoveAll(); sampleArray.Add("學(xué)號"); sampleArray.Add("姓名"); sampleArray.Add("性別"); sampleArray.Add("民族"); sampleArray.Add("出生年月"); sampleArray.Add("政治面貌"); sampleArray.Add("生源地"); sampleArray.Add("籍貫"); sampleArray.Add("班級"); sampleArray.Add("專業(yè)"); sampleArray.Add("系別"); SS.AddHeaders(sampleArray); for(i=0;i<datanum;i++) { sampleArray.RemoveAll(); for(j=0;j<11;j++) { sampleArray.Add(datas[i].data[j]); } SS.AddRow(sampleArray); } SS.Commit(); MessageBox("保存成功");; } }新增內(nèi)容函數(shù)內(nèi)容showdetail.cppvoidshowdetails::OnOK(){ SURE=1; m_1.GetWindowText(words[0]); m_2.GetWindowText(words[1]); m_3.GetWindowText(words[2]); m_4.GetWindowText(words[3]); m_5.GetWindowText(words[4]); m_6.GetWindowText(words[5]); m_7.GetWindowText(words[6]); m_8.GetWindowText(words[7]); m_9.GetWindowText(words[8]); m_10.GetWindowText(words[9]); m_11.GetWindowText(words[10]); OnCancel(); }voidshowdetails::OnCan(){ SURE=0; OnCancel(); }voidshowdetails::initial()//初始化{ if(SIN==1) { m_1.SetSel(0,-1); m_1.ReplaceSel(words[0]); m_2.SetSel(0,-1); m_2.ReplaceSel(words[1]); m_3.SetSel(0,-1); m_3.ReplaceSel(words[2]); m_4.SetSel(0,-1); m_4.ReplaceSel(words[3]); m_5.SetSel(0,-1); m_5.ReplaceSel(words[4]); m_6.SetSel(0,-1); m_6.ReplaceSel(words[5]); m_7.SetSel(0,-1); m_7.ReplaceSel(words[6]); m_8.SetSel(0,-1); m_8.ReplaceSel(words[7]); m_9.SetSel(0,-1); m_9.ReplaceSel(words[8]); m_10.SetSel(0,-1); m_10.ReplaceSel(words[9]); m_11.SetSel(0,-
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026吉林長春中國一汽研發(fā)總院全球校園招聘備考題庫(含答案詳解)
- 初一綜合考試題類型及答案
- 2025-2026人教版小學(xué)二年級體育上學(xué)期期末測試卷
- 寧波護(hù)士考編試題及答案
- 2025-2026人教版五年級勞技上期測試卷
- 老年護(hù)理中的技術(shù)支持與安全
- 2025 小學(xué)六年級科學(xué)上冊科學(xué)教育中的數(shù)據(jù)學(xué)習(xí)處理方法課件
- 2025-2026七年級地理上學(xué)期期末湘教卷
- 《飛行汽車電池管理系統(tǒng)技術(shù)規(guī)范》(征求意見稿)
- 腸易激綜合征的營養(yǎng)調(diào)理方案
- 地形測量投標(biāo)標(biāo)書技術(shù)設(shè)計(jì)書
- 2025及未來5年馬桶水箱組合項(xiàng)目投資價(jià)值分析報(bào)告
- 合伙建廠合同協(xié)議書
- 代建合同安全協(xié)議書
- 貸款掛靠合同(標(biāo)準(zhǔn)版)
- 學(xué)生手機(jī)理性使用教育教案
- DB64-T 1991-2024 地質(zhì)災(zāi)害監(jiān)測設(shè)施建設(shè)技術(shù)規(guī)范
- 統(tǒng)編版(2024)七年級上冊歷史期末復(fù)習(xí)知識點(diǎn)講義
- 礦山復(fù)工復(fù)產(chǎn)安全培訓(xùn)課件
- 焊工獎罰管理辦法
- 監(jiān)護(hù)人考核管理辦法
評論
0/150
提交評論