版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、vc+圖書(shū)管理系統(tǒng)課程設(shè)計(jì)報(bào)告 ( 2011 - 2012 年度第 2 學(xué)期) c+程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告 圖書(shū)管理系統(tǒng)的設(shè)計(jì) 專業(yè) 2012年6月 22日 學(xué)生姓名 班學(xué)級(jí) 號(hào) 指導(dǎo)教師 完成日期 圖書(shū)管理系統(tǒng)的設(shè)計(jì)目 錄目 錄 . 2 1 概 述 . 11.1 課程設(shè)計(jì)目的 . 11.2 課程設(shè)計(jì) 錄 . 19 附錄1 源程序清單 . 19附錄1.1系統(tǒng)登錄模塊源程序 . 19附錄1.2系統(tǒng)主界面源程序 . 20附錄1.3圖書(shū)信息管理模塊源程序 . 23附錄1.4管理員、讀者信息管理模塊源程序 . 30附錄1.5借還書(shū)管理模塊源程序 . 44附錄1.6罰金查詢模塊源程序 . 50程序設(shè)計(jì)課程
2、設(shè)計(jì)報(bào)告(2012)學(xué)生成績(jī)管理系統(tǒng)的設(shè)計(jì)1 概 述1.1 課程設(shè)計(jì)目的1、鞏固并加深學(xué)生對(duì)c+語(yǔ)言程序設(shè)計(jì)知識(shí)的理解;2、培養(yǎng)學(xué)生面向?qū)ο蟮某绦蛟O(shè)計(jì)思想,使學(xué)生認(rèn)識(shí)面向過(guò)程和面向?qū)ο髢煞N設(shè)計(jì)方法的區(qū)別;3、進(jìn)一步掌握和應(yīng)用vc+6.0集成開(kāi)發(fā)環(huán)境;4、提高運(yùn)用c+語(yǔ)言解決實(shí)際問(wèn)題的能力;5、初步掌握開(kāi)發(fā)小型實(shí)用軟件的基本方法,能獨(dú)立設(shè)計(jì)、實(shí)現(xiàn)基本的mis系統(tǒng);6、掌握書(shū)寫(xiě)程序設(shè)計(jì)開(kāi)發(fā)文檔的能力(書(shū)寫(xiě)課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告)。1.2 課程設(shè)計(jì)內(nèi)容課題名稱:圖書(shū)管理系統(tǒng)的開(kāi)發(fā)說(shuō)明:實(shí)現(xiàn)簡(jiǎn)單圖書(shū)信息的管理。要求:1)權(quán)限管理:增加或刪除系統(tǒng)操作人員,并指定操作人員的權(quán)限;2)讀者管理:設(shè)置不同的讀者身份
3、,并對(duì)讀者相關(guān)信息進(jìn)行管理,包括建立新的讀者,編輯已有的讀者信息和刪除讀者信息的操作;3)圖書(shū)類別的管理:對(duì)圖書(shū)的類別進(jìn)行管理;4)圖書(shū)入庫(kù)管理:錄入新的圖書(shū)信息;5)圖書(shū)信息修改管理:對(duì)已有的圖書(shū)信息進(jìn)行修改,包括刪除指定圖書(shū)操作;6)圖書(shū)借還管理:實(shí)現(xiàn)對(duì)圖書(shū)的借出和歸還的管理;7)圖書(shū)查詢管理:通過(guò)各種查詢方式可以來(lái)進(jìn)行查詢,比如書(shū)號(hào),書(shū)名,作者等;8)圖書(shū)超期管理:對(duì)超期的情況能自動(dòng)給出提示信息。2 系統(tǒng)需求分析2.1 系統(tǒng)目標(biāo)實(shí)現(xiàn)簡(jiǎn)單圖書(shū)信息的管理。如:登陸權(quán)限管理、讀者管理、圖書(shū)信息(入庫(kù)、修改、借還、查詢、超期)管理、罰金管理2.2 主體功能1)權(quán)限管理:增加或刪除系統(tǒng)操作人員,并
4、指定操作人員的權(quán)限;2)讀者管理:設(shè)置不同的讀者身份,并對(duì)讀者相關(guān)信息進(jìn)行管理,包括建立新的讀者,編輯已有的讀者信息和刪除讀者信息的操作;3)圖書(shū)類別的管理:對(duì)圖書(shū)的類別進(jìn)行管理;4)圖書(shū)入庫(kù)管理:錄入新的圖書(shū)信息;5)圖書(shū)信息修改管理:對(duì)已有的圖書(shū)信息進(jìn)行修改,包括刪除指定圖書(shū)操作;6)圖書(shū)借還管理:實(shí)現(xiàn)對(duì)圖書(shū)的借出和歸還的管理;7)圖書(shū)查詢管理:通過(guò)各種查詢方式可以來(lái)進(jìn)行查詢,比如書(shū)號(hào),書(shū)名,作者等;8)圖書(shū)超期管理:對(duì)超期的情況能自動(dòng)給出提示信息。2.3 開(kāi)發(fā)環(huán)境vc+6.0集成開(kāi)發(fā)環(huán)境、access2003數(shù)據(jù)庫(kù)1圖書(shū)管理系統(tǒng)的設(shè)計(jì)3 系統(tǒng)概要設(shè)計(jì)3.1 系統(tǒng)的功能模塊劃分整個(gè)圖書(shū)管理
5、系統(tǒng)分為四個(gè)模塊。分別為圖書(shū)管理模塊、借閱管理模塊、讀者管理模塊和3.2 系統(tǒng)流程圖 2程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(2012)4系統(tǒng)詳細(xì)設(shè)計(jì)用access2003建立名為“l(fā)ibrary”的數(shù)據(jù)庫(kù),創(chuàng)建4個(gè)表,分別為:book,clerk,reader,borrow和fine。 利用odbc數(shù)據(jù)源管理器配置與數(shù)據(jù)庫(kù)對(duì)應(yīng)的數(shù)據(jù)源 3圖書(shū)管理系統(tǒng)的設(shè)計(jì) 建立名為“l(fā)ibrary”的mfc單文檔應(yīng)用程序向?qū)г诿麨閟tdafx.h的頭文件中添加#include <afxdb.h>4.1 系統(tǒng)登錄模塊設(shè)計(jì) 添加系統(tǒng)登錄對(duì)話框,屬性設(shè)置為 4程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(2012) 創(chuàng)建一個(gè)新類,名為ccl
6、erkdataset,在base class中選擇crecordset 添加消息映射5 圖書(shū)管理系統(tǒng)的設(shè)計(jì) 最后輸入按鍵的執(zhí)行代碼。4.2 系統(tǒng)主界面設(shè)計(jì) 其中信息可以查看管理員信息,圖書(shū)信息,讀者信息;日常工作中包含圖書(shū)借閱,圖書(shū)歸還,繳納罰款;查詢中包含讀者查詢;幫助中可以查看系統(tǒng)幫助 6程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(2012)4.3圖書(shū)信息管理模塊設(shè)計(jì) 7圖書(shū)管理系統(tǒng)的設(shè)計(jì)為idd_book_maintain添加成員變量創(chuàng)建一個(gè)新類,名為cbookdataset,方法步驟同cclerkdataset,添加消息映射最后輸入按鈕代碼4.4 管理員、讀者信息管理模塊設(shè)計(jì)管理員信息管理 8程序設(shè)計(jì)課程設(shè)
7、計(jì)報(bào)告(2012)其中職位有為idd_clerk_maintain添加成員變量建立新類cclerkmdlg,按圖書(shū)信息模塊設(shè)計(jì)步驟做相似操作,添加消息映射 最后輸入按鈕代碼 讀者信息管理 9圖書(shū)管理系統(tǒng)的設(shè)計(jì)建立新類creaderdataset,按上述步驟做相似操作,添加消息映射 最后輸入按鈕代碼4.5 借書(shū)還書(shū)管理模塊設(shè)計(jì)借書(shū)管理 建立新類lendoutdlg,按上述步驟做相似操作,添加消息響應(yīng)最后輸入按鈕代碼 還書(shū)管理 10程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(2012)建立新類creturnbookdlg,按上述步驟做相似操作,添加消息映射 最后輸入代碼4.6 借書(shū)、罰金查詢查詢模塊設(shè)計(jì)借書(shū)查詢 建立新
8、類creaderqrydlg,按上述步驟做相似操作,添加消息映射最后輸入代碼 11圖書(shū)管理系統(tǒng)的設(shè)計(jì)罰金查詢 建立新類cfinehistorydataset,按上述步驟做相似操作,添加消息映射 最后輸入代碼5 測(cè)試5.1 測(cè)試方案采用黑盒測(cè)試方法。對(duì)功能進(jìn)行逐一測(cè)試,在輸入合理及不合理的數(shù)據(jù)后測(cè)試系統(tǒng)的正常運(yùn)作情況測(cè)試1:系統(tǒng)登錄測(cè)試測(cè)試2:圖書(shū)管理測(cè)試測(cè)試3:讀者管理測(cè)試12程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(2012)測(cè)試4:管理員管理測(cè)試測(cè)試5:借書(shū)測(cè)試測(cè)試6:還書(shū)測(cè)試測(cè)試7:借書(shū)、罰金查詢測(cè)試5.2 測(cè)試結(jié)果1、登錄測(cè)試: 正確登錄 錯(cuò)誤登錄 2、圖書(shū)管理測(cè)試 新增13圖書(shū)管理系統(tǒng)的設(shè)計(jì) 3、讀者管
9、理測(cè)試修改 4、管理員管理測(cè)試查詢 14程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(2012) 5、借書(shū)測(cè)試 借閱成功 借閱失敗 15圖書(shū)管理系統(tǒng)的設(shè)計(jì) 6、還書(shū)測(cè)試 7、借書(shū)、罰金查詢測(cè)試 借書(shū)查詢 16程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(2012) 罰金查詢 6 小結(jié) 在這次的課程設(shè)計(jì)中,讓我學(xué)到了很多在課堂上和書(shū)本上學(xué)不到的知識(shí),我在這次課程設(shè)計(jì)中最大的收獲有以下幾方面:一、 領(lǐng)略到了數(shù)據(jù)庫(kù)設(shè)計(jì)在計(jì)算機(jī)領(lǐng)域的重要性。數(shù)據(jù)庫(kù)作為一個(gè)永久存儲(chǔ)形式在17圖書(shū)管理系統(tǒng)的設(shè)計(jì)應(yīng)用中發(fā)揮著重要的作用。在數(shù)據(jù)庫(kù)設(shè)計(jì)中,我明白了數(shù)據(jù)庫(kù)設(shè)計(jì)不是范式越高越好的,我們要根據(jù)我們的應(yīng)用來(lái)決定,一切應(yīng)該以需求為首要選擇。二、 對(duì)編程環(huán)境、一些控件的
10、使用和界面的設(shè)計(jì)更加熟悉。因?yàn)閳D書(shū)管理系統(tǒng)中設(shè)計(jì)到很多控件的使用,只有很好的使用這些控件才可以給出一個(gè)很好的界面呈現(xiàn)在用戶面前。這樣更有利于數(shù)據(jù)庫(kù)和用戶之間的交流。三、 利用軟件工程學(xué)開(kāi)發(fā)系統(tǒng)。雖然這個(gè)圖書(shū)管理系統(tǒng)是一個(gè)小的系統(tǒng),但從這個(gè)小的項(xiàng)目中也讓我明白了數(shù)據(jù)庫(kù)作為任何一個(gè)系統(tǒng)的后臺(tái)的重要性,在開(kāi)譚浩強(qiáng). c譚浩強(qiáng). c發(fā)系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)中學(xué)到和總結(jié)很多經(jīng)驗(yàn)和教訓(xùn)。 參考文獻(xiàn) 程序設(shè)計(jì)(第三版) . 北京:清華大學(xué)出版社, 2005 程序設(shè)計(jì)題解與上機(jī)指導(dǎo)(第三版) . 北京:清華大學(xué)出版社,18 12 2005程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(2012)附 錄附錄1 源程序清單附錄1.1系統(tǒng)登錄模塊源
11、程序clogindlg:clogindlg(cwnd* pparent /*=null*/): cdialog(clogindlg:idd, pparent)/afx_data_init(clogindlg)m_strname = _t("");m_strpassword = _t("");/afx_data_initm_bsuccess = false;m_struserid = _t(""); void clogindlg:dodataexchange(cdataexchange* pdx) cdialog:dodataexcha
12、nge(pdx);/afx_data_map(clogindlg)ddx_text(pdx, idc_login_name, m_strname); ddv_maxchars(pdx, m_strname, 8);ddx_text(pdx, idc_login_password, m_strpassword); ddv_maxchars(pdx, m_strpassword, 8);/afx_data_map begin_message_map(clogindlg, cdialog)/afx_msg_map(clogindlg)on_bn_clicked(idc_confirm, onconf
13、irm)on_bn_clicked(idc_cancel, oncancel)/afx_msg_mapend_message_map() / clogindlg message handlers void clogindlg:onconfirm()/ todo: add your control notification handler code here cclerkdataset mrsdataset; /*聲明記錄集*/cstring msqlstr; updatedata(true); if (m_strname.isempty() /*判斷用戶名信息是否為空*/ afxmessage
14、box("請(qǐng)輸入用戶名!");return;19圖書(shū)管理系統(tǒng)的設(shè)計(jì) msqlstr = "select * from clerk where name=" msqlstr = msqlstr + m_strname;msqlstr = msqlstr + " and password="msqlstr = msqlstr + m_strpassword;msqlstr = msqlstr + "" if (!mrsdataset.open(afx_db_use_default_type, msqlstr) afxm
15、essagebox("clerk表打開(kāi)失??!");return;if (!mrsdataset.iseof()/ open all function for userm_bsuccess = true;m_struserid = mrsdataset.m_clerk_id ;cdialog:onok();elseafxmessagebox("登錄失??!");m_struserid = _t("");return; void clogindlg:oncancel()/ todo: add your control notificatio
16、n handler code herecdialog:oncancel();附錄1.2系統(tǒng)主界面源程序void cmainframe:onloginin()/ todo: add your command handler code hereclogindlg mdlg;if (mdlg.domodal() = idok)m_blogin = true;m_strusername = mdlg.m_strname ;m_struserid = mdlg.m_struserid;elsem_blogin = false;m_strusername = _t("");m_stru
17、serid = _t("");cstring name;name = "當(dāng)前用戶:" + m_strusername;m_wndstatusbar.setpanetext(0,name);20程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(2012) void cmainframe:onupdatefine(ccmdui* pcmdui)/ todo: add your command update ui handler code here pcmdui->enable(m_blogin); void cmainframe:onupdatebookmaintain(ccmd
18、ui* pcmdui) / todo: add your command update ui handler code here pcmdui->enable(m_blogin); void cmainframe:onupdateconfigmaintain(ccmdui* pcmdui) / todo: add your command update ui handler code here pcmdui->enable(m_blogin); void cmainframe:onupdatelendout(ccmdui* pcmdui) / todo: add your comm
19、and update ui handler code here pcmdui->enable(m_blogin); void cmainframe:onupdateloginout(ccmdui* pcmdui) / todo: add your command update ui handler code here pcmdui->enable(m_blogin); void cmainframe:onupdatereadermaintain(ccmdui* pcmdui) / todo: add your command update ui handler code here
20、pcmdui->enable(m_blogin); void cmainframe:onupdatereturnback(ccmdui* pcmdui) / todo: add your command update ui handler code here pcmdui->enable(m_blogin); void cmainframe:onupdateusermaintain(ccmdui* pcmdui) / todo: add your command update ui handler code here pcmdui->enable(m_blogin); 21圖
21、書(shū)管理系統(tǒng)的設(shè)計(jì)void cmainframe:onloginout()/ todo: add your command handler code here m_blogin = false;m_strusername = _t("");m_struserid = _t(""); cstring name;name = "當(dāng)前用戶:" + m_strusername; m_wndstatusbar.setpanetext(0,name); void cmainframe:onreadermaintain()/ todo: add yo
22、ur command handler code here creadermdlg mdlg;mdlg.domodal(); void cmainframe:onusermaintain()/ todo: add your command handler code here cclerkmdlg mdlg;mdlg.domodal(); void cmainframe:onbookmaintain()/ todo: add your command handler code here cbookmdlg mdlg;mdlg.domodal(); void cmainframe:onlendout
23、()/ todo: add your command handler code here clendoutdlg mdlg;mdlg.domodal(); void cmainframe:onfine()/ todo: add your command handler code here cfinedlg mdlg;mdlg.domodal(); void cmainframe:onreturnback()creturnbookdlg mdlg;mdlg.domodal();/ todo: add your command handler code here void cmainframe:o
24、nreaderqry()22程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(2012) / todo: add your command handler code here /creaderqry mdlg; creaderqrydlg mdlg; mdlg.domodal();附錄1.3圖書(shū)信息管理模塊源程序void cbookmdlg:oncancelrec()/ todo: add your control notification handler code here m_badd = false;m_bedit = false;displayrecord();setbuttonstate(); settexts
25、tate(); void cbookmdlg:ondelete()/ todo: add your control notification handler code here m_rsdataset.delete();displayrecord();setbuttonstate(); void cbookmdlg:onedit()/ todo: add your control notification handler code here m_bedit = true;setbuttonstate();settextstate();cwnd *pwnd;pwnd = getdlgitem(i
26、dc_bookname);pwnd->setfocus(); void cbookmdlg:onenquery()/ todo: add your control notification handler code here updatedata(true);if (m_strbookidq.isempty() && m_strbooknameq.isempty() m_rsdataset.m_strfilter = ""m_rsdataset.requery();displayrecord();setbuttonstate();return;bool
27、 mall = false;if (!m_strbookidq.isempty()m_rsdataset.m_strfilter = "book_id=" + m_strbookidq ;23圖書(shū)管理系統(tǒng)的設(shè)計(jì)m_rsdataset.m_strfilter = m_rsdataset.m_strfilter + ""mall = true;if (!m_strbooknameq.isempty()if (mall)m_rsdataset.m_strfilter = m_rsdataset.m_strfilter + " and book_nam
28、e=" m_rsdataset.m_strfilter = m_rsdataset.m_strfilter + m_strbooknameq; m_rsdataset.m_strfilter = m_rsdataset.m_strfilter + ""elsem_rsdataset.m_strfilter = "book_name=" + m_strbooknameq; m_rsdataset.m_strfilter = m_rsdataset.m_strfilter + "" m_rsdataset.requery();d
29、isplayrecord();setbuttonstate(); void cbookmdlg:onexit()/ todo: add your control notification handler code herecdialog:oncancel(); void cbookmdlg:onfirst()/ todo: add your control notification handler code hereif(!m_rsdataset.isbof()m_rsdataset.movefirst();displayrecord();setbuttonstate(); void cboo
30、kmdlg:onlast()/ todo: add your control notification handler code hereif(!m_rsdataset.iseof()m_rsdataset.movelast();displayrecord();setbuttonstate(); void cbookmdlg:onnew()24程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(2012)/ todo: add your control notification handler code here m_strbookid = ""m_strbookname = ""m
31、_strauthor = ""m_strpress = ""m_strflag = "y" / m_cntrposition.updatedata(false);m_bedit = true;m_badd = true;setbuttonstate();settextstate();cwnd *pwnd;pwnd = getdlgitem(idc_bookid);pwnd->setfocus(); void cbookmdlg:onnext()/ todo: add your control notification handl
32、er code here if(!m_rsdataset.iseof()m_rsdataset.movenext();displayrecord();setbuttonstate(); void cbookmdlg:onprior()/ todo: add your control notification handler code here if(!m_rsdataset.isbof()m_rsdataset.moveprev();displayrecord();setbuttonstate(); void cbookmdlg:onsave()/ todo: add your control
33、 notification handler code here updatedata(true);if (m_strbookid.isempty() | m_strbookname.isempty() afxmessagebox("請(qǐng)輸入相應(yīng)數(shù)據(jù)!");return;if (m_badd)m_rsdataset.addnew(); 25圖書(shū)管理系統(tǒng)的設(shè)計(jì)elsem_rsdataset.edit();m_rsdataset.m_author = m_strauthor;m_rsdataset.m_book_name = m_strbookname; m_rsdataset.m
34、_book_id = m_strbookid;m_rsdataset.m_press = m_strpress;m_rsdataset.m_flag_borrow = m_strflag;/ m_rsdataset.m_flag_borrow = "y"m_rsdataset.update();m_rsdataset.requery();m_badd = false;m_bedit = false;displayrecord();setbuttonstate();settextstate(); bool cbookmdlg:displayrecord()if (m_rsda
35、taset.iseof() && m_rsdataset.isbof() m_strbookid = ""m_strbookname = ""m_strpress = ""m_strauthor = ""m_strflag = ""elseif (m_rsdataset.isbof()m_rsdataset.movenext();elseif (m_rsdataset.iseof()m_rsdataset.moveprev();m_strbookid = m_rsdataset.
36、m_book_id;m_strbookname = m_rsdataset.m_book_name; m_strpress = m_rsdataset.m_press;m_strauthor = m_rsdataset.m_author ;m_strflag = m_rsdataset.m_flag_borrow ; updatedata(false);return true; bool cbookmdlg:settextstate()26程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(2012)cwnd *pwnd; if (m_bedit)pwnd = getdlgitem(idc_bookname); pwnd-
37、>enablewindow(true);pwnd = getdlgitem(idc_bookid); if (m_badd)pwnd->enablewindow(true); elsepwnd->enablewindow(false); pwnd = getdlgitem(idc_author); pwnd->enablewindow(true);pwnd = getdlgitem(idc_press);pwnd->enablewindow(true);pwnd = getdlgitem(idc_pressdate); pwnd->enablewindow(
38、true);pwnd = getdlgitem(idc_flag_borrow); pwnd->enablewindow(true); elsepwnd = getdlgitem(idc_bookname); pwnd->enablewindow(false);pwnd = getdlgitem(idc_bookid); pwnd->enablewindow(false);pwnd = getdlgitem(idc_author); pwnd->enablewindow(false);pwnd = getdlgitem(idc_press);pwnd->enabl
39、ewindow(false);pwnd = getdlgitem(idc_pressdate); pwnd->enablewindow(false);pwnd = getdlgitem(idc_flag_borrow); pwnd->enablewindow(false);pwnd = getdlgitem(idc_bookname_q); pwnd->enablewindow(true);pwnd = getdlgitem(idc_bookid_q);pwnd->enablewindow(true);return true; bool cbookmdlg:setbut
40、tonstate()cwnd *pwnd; if(!m_rsdataset.isopen()pwnd = getdlgitem(idc_first);pwnd->enablewindow(false);pwnd = getdlgitem(idc_next);pwnd->enablewindow(false);pwnd = getdlgitem(idc_prior);pwnd->enablewindow(false);27圖書(shū)管理系統(tǒng)的設(shè)計(jì) pwnd = getdlgitem(idc_last); pwnd->enablewindow(false); pwnd = get
41、dlgitem(idc_new); pwnd->enablewindow(false); pwnd = getdlgitem(idc_edit); pwnd->enablewindow(false); pwnd = getdlgitem(idc_enquery); pwnd->enablewindow(false); pwnd = getdlgitem(idc_delete); pwnd->enablewindow(false); pwnd = getdlgitem(idc_save); pwnd->enablewindow(false); pwnd = getd
42、lgitem(idc_cancel_rec); pwnd->enablewindow(false); return true; if (m_bedit) pwnd = getdlgitem(idc_first); pwnd->enablewindow(false); pwnd = getdlgitem(idc_next); pwnd->enablewindow(false); pwnd = getdlgitem(idc_prior); pwnd->enablewindow(false); pwnd = getdlgitem(idc_last); pwnd->ena
43、blewindow(false); if (m_rsdataset.isbof() pwnd = getdlgitem(idc_first); pwnd->enablewindow(false); pwnd = getdlgitem(idc_prior); pwnd->enablewindow(false); 28 pwnd = getdlgitem(idc_new); pwnd->enablewindow(false); pwnd = getdlgitem(idc_edit); pwnd->enablewindow(false); pwnd = getdlgitem(
44、idc_enquery); pwnd->enablewindow(false); pwnd = getdlgitem(idc_delete); pwnd->enablewindow(false); pwnd = getdlgitem(idc_save); pwnd->enablewindow(true); pwnd = getdlgitem(idc_cancel_rec); pwnd->enablewindow(true); return true;程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(2012)elsepwnd = getdlgitem(idc_first);pwnd->ena
45、blewindow(true);pwnd = getdlgitem(idc_prior);pwnd->enablewindow(true); if (m_rsdataset.iseof()pwnd = getdlgitem(idc_next);pwnd->enablewindow(false);pwnd = getdlgitem(idc_last);pwnd->enablewindow(false);elsepwnd = getdlgitem(idc_next);pwnd->enablewindow(true);pwnd = getdlgitem(idc_last);p
46、wnd->enablewindow(true); if (m_rsdataset.isbof() && m_rsdataset.iseof() pwnd = getdlgitem(idc_edit);pwnd->enablewindow(false);pwnd = getdlgitem(idc_delete); pwnd->enablewindow(false); elsepwnd = getdlgitem(idc_edit);pwnd->enablewindow(true);pwnd = getdlgitem(idc_delete); pwnd->
47、;enablewindow(true); pwnd = getdlgitem(idc_new);pwnd->enablewindow(true);pwnd = getdlgitem(idc_enquery);pwnd->enablewindow(true);pwnd = getdlgitem(idc_save);pwnd->enablewindow(false);pwnd = getdlgitem(idc_cancel_rec); pwnd->enablewindow(false); return true; bool cbookmdlg:oninitdialog()c
48、dialog:oninitdialog(); 29圖書(shū)管理系統(tǒng)的設(shè)計(jì) / todo: add extra initialization here m_badd = false; m_bedit = false; if (!m_rsdataset.open(afx_db_use_default_type) afxmessagebox("數(shù)據(jù)打開(kāi)失??!"); displayrecord(); setbuttonstate(); settextstate(); return true; / return true unless you set the focus to a control / exception: ocx property pages should return false附錄1.4管理員、讀者信息管理模塊源程序管理員:void cclerkmdlg:oncancelrec()
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電力工程勞務(wù)分包合同樣本
- 重型廢鋼采購(gòu)協(xié)議
- 代理記賬與辦公自動(dòng)化合同
- 每月服務(wù)費(fèi)用合同
- 個(gè)人職業(yè)操守保證宣言
- 工程承包合同樣本
- 網(wǎng)絡(luò)運(yùn)維服務(wù)協(xié)議
- 房屋交易合同說(shuō)明
- 招標(biāo)代理機(jī)構(gòu)比選評(píng)價(jià)
- 嚴(yán)守保密紀(jì)律忠誠(chéng)使命擔(dān)當(dāng)
- GB/T 39604-2020社會(huì)責(zé)任管理體系要求及使用指南
- 加油站網(wǎng)架吊裝方案
- 幼兒園主題教育活動(dòng)設(shè)計(jì)與實(shí)施課件
- 實(shí)驗(yàn)室生物安全程序文件
- 一年級(jí)上冊(cè)數(shù)學(xué)解決問(wèn)題50道【綜合題】
- 拖車方案、拖車服務(wù)質(zhì)量控制要點(diǎn)、拖車應(yīng)對(duì)措施及供應(yīng)保證措施
- 幼兒園:先進(jìn)工作者評(píng)比標(biāo)準(zhǔn)
- (課件)肝性腦病
- DB33T 904-2021 公路軟土地基路堤設(shè)計(jì)規(guī)范
- 口腔外科:牽張成骨在口腔頜面外科中的應(yīng)用課件
- SPC培訓(xùn)資料課件
評(píng)論
0/150
提交評(píng)論