




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 華科學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)系計(jì)算機(jī)專業(yè) 軟件工程課程設(shè)計(jì)報(bào)告 (2010/2011學(xué)年 第一學(xué)期)學(xué)生姓名: 強(qiáng)海榮學(xué)生班級: 計(jì)算機(jī)072202H學(xué)生學(xué)號: 200722030217指導(dǎo)教師: 趙旭俊 2010年12月27日目錄第一章 系統(tǒng)概述11.1 系統(tǒng)開發(fā)的背景11.2 系統(tǒng)開發(fā)的意義11.3 系統(tǒng)開發(fā)的目標(biāo)1第二章 需求分析22.1 綜合要求22.1.1 功能要求22.1.2 性能需求22.2 數(shù)據(jù)流圖22.3 數(shù)據(jù)字典52.4 系統(tǒng)E-R圖9第三章 概要設(shè)計(jì)113.1 合理方案設(shè)計(jì)113.2 系統(tǒng)功能模塊設(shè)計(jì)113.3數(shù)據(jù)庫設(shè)計(jì)12第四章 詳細(xì)設(shè)計(jì)144.1 數(shù)據(jù)庫及表創(chuàng)建144.
2、1.1 新建表144.1.2 設(shè)計(jì)表164.2 結(jié)構(gòu)程序設(shè)計(jì)174.2.1 添加信息程序流程圖174.2.2 修改信息程序流程圖174.2.3 刪除信息程序流程圖184.2.4 查詢信息程序流程圖194.2.5 系統(tǒng)程序流程圖194.3 人機(jī)界面設(shè)計(jì)21第五章 系統(tǒng)編碼與實(shí)現(xiàn)225.1 創(chuàng)建工程項(xiàng)目225.2 工程主窗體225.3 用戶登陸窗體235.4 學(xué)生信息窗體255.4.1 學(xué)生信息添加窗體255.4.2 學(xué)生信息刪改(刪除、修改)窗體295.4.3 學(xué)生信息查詢窗體31第六章 系統(tǒng)測試346.1 測試方法346.2測試用例346.2.1 用戶登陸346.2.2 學(xué)生信息35結(jié)束語37
3、參考文獻(xiàn)38第一章 系統(tǒng)概述1.1 系統(tǒng)開發(fā)的背景隨著學(xué)校規(guī)模的不斷擴(kuò)大,專業(yè)、班級、學(xué)生的數(shù)量急劇增加,有關(guān)學(xué)生各門課程的成績的各種信息量也成倍增長,而目前許多高校的學(xué)生信息管理仍停留在復(fù)雜的人工操作上,重復(fù)工作較多,工作量大,效率低,因此,迫切需要開發(fā)學(xué)生管理信息系統(tǒng)來提高管理工作的效率。1.2 系統(tǒng)開發(fā)的意義學(xué)生管理信息系統(tǒng),在學(xué)生信息的規(guī)范管理、科學(xué)統(tǒng)計(jì)和快速查詢方面具有較大的實(shí)用意義。它提高了信息的開放性,大大地改善了學(xué)生、教師對其最新信息查詢的準(zhǔn)確性。為了能夠?qū)W以致用,通過對學(xué)生管理信息系統(tǒng)的簡單開發(fā),不僅可以鞏固書本上所學(xué)知識(shí),從而能夠?qū)λ鶎W(xué)內(nèi)容加以深化,拓寬自己的知識(shí)面。通過學(xué)
4、習(xí)與實(shí)踐相結(jié)合,提高自己的編程能力,為今后的畢業(yè)設(shè)計(jì)和以后的軟件開發(fā)奠定了基礎(chǔ)。1.3 系統(tǒng)開發(fā)的目標(biāo)學(xué)生管理信息系統(tǒng)是面向教育部門的學(xué)生管理系統(tǒng),包括學(xué)生基本信息管理,學(xué)生成績管理等工作,是利用計(jì)算機(jī)進(jìn)行集中管理而開發(fā)的系統(tǒng)。該系統(tǒng)是以Visual Basic 6.0為開發(fā)環(huán)境,以SQL 2000為后臺(tái)數(shù)據(jù)庫進(jìn)行開發(fā)的管理系統(tǒng),力求與實(shí)際相結(jié)合具有查詢、管理等功能,使教育的管理趨于計(jì)算機(jī)化,使之更加方便、快捷以提高工作效率。根據(jù)學(xué)生管理的需求和特點(diǎn),該系統(tǒng)實(shí)施后,應(yīng)達(dá)到以下目標(biāo):1. 靈活地運(yùn)用表格輸入數(shù)據(jù),使信息傳遞更快捷;2. 系統(tǒng)采用人機(jī)對話方式,界面美觀友好、數(shù)據(jù)存儲(chǔ)安全可靠;3.
5、鍵盤操作,快速響應(yīng);4. 實(shí)現(xiàn)各種信息的添加、刪除、修改、查詢等;5. 系統(tǒng)運(yùn)行穩(wěn)定、安全可靠。第二章 系統(tǒng)需求分析2.1 綜合要求2.1.1 功能要求在學(xué)生管理信息系統(tǒng)中,主要有用戶登陸、學(xué)生信息管理、班級信息管理、學(xué)生成績管理、課程信息管理、用戶信息管理等功能。1. 用戶登陸管理員登陸,普通用戶對信息的查詢登陸,管理員和普通用戶必須在登陸頁面輸入用戶名及密碼,只有驗(yàn)證通過方可進(jìn)入其它操作。2. 學(xué)生信息管理包括4個(gè)功能模塊:學(xué)生信息添加、學(xué)生信息修改、學(xué)生信息刪除和學(xué)生信息查詢。3. 班級信息管理包括4個(gè)功能模塊:班級信息添加、班級信息修改、班級信息刪除和班級信息查詢。4. 學(xué)生成績管理包
6、括4個(gè)功能模塊:學(xué)生成績添加、學(xué)生成績修改、學(xué)生成績刪除和學(xué)生成績查詢。5. 課程信息管理包括4個(gè)功能模塊:課程信息添加、課程信息修改、課程信息刪除和課程信息查詢。6. 用戶信息管理包括2個(gè)功能模塊:用戶信息添加和用戶密碼修改。2.1.2 性能需求要求該系統(tǒng)易操作、可維護(hù)、具有開放性,時(shí)刻保持?jǐn)?shù)據(jù)的有效性與安全性,并且只有管理員才能對數(shù)據(jù)進(jìn)行修改。開發(fā)環(huán)境:Visual Basic 6.0.數(shù)據(jù)庫:SQL Server2000.操作系統(tǒng):Windows XP.2.2 數(shù)據(jù)流圖分析學(xué)生管理信息系統(tǒng)的數(shù)據(jù)來源和去向,繪制出數(shù)據(jù)流圖的頂層數(shù)據(jù)流圖,如圖2-1所示。學(xué)生信息班級信息顯示信息顯示信息顯示
7、信息顯示信息學(xué)生信息D1管理員普通用戶登 陸1學(xué)生信息管 理顯 示用戶2班級信息管 理3課程信息管 理4學(xué)生成績管 理成績信息班級信息班級信息D2課程信息D3成績信息D4成績信息課程信息課程信息圖2-1 學(xué)生管理信息系統(tǒng)的頂層數(shù)據(jù)流圖按自頂向下、逐層分解的方法對頂層數(shù)據(jù)流圖進(jìn)一步細(xì)化,繪制出0層數(shù)據(jù)流圖,如圖2.2所示。用戶學(xué)生信息成績信息成績信 息顯示顯示課程信息顯示成績信息顯示班級信息用戶信息用戶信息用戶信息課程信息課程信息班級信息學(xué)生信息用戶顯示學(xué)生信息1.1學(xué)生信息管 理1.2添加刪除修改記 錄用戶信息更新學(xué)生信息D1D1學(xué)生信息2.1班級信息管 理2.2添加刪除修改記 錄D2學(xué)生信息
8、D2更新班級信息班級信息3.1課程信息管 理3.2添加刪除修改記 錄D3課程信息D3更新課程信息4.1成績信息管 理4.2添加刪除修改記 錄D4成績信息D4更新成績信息圖2.2 學(xué)生管理信息系統(tǒng)的0層數(shù)據(jù)流圖2.3 數(shù)據(jù)字典該學(xué)生信息管理系統(tǒng)的數(shù)據(jù)字典如下:(1)、數(shù)據(jù)名稱:學(xué)生信息數(shù)據(jù)流數(shù)據(jù)字典數(shù)據(jù)名: 錄入學(xué)生的基本信息來源: 管理員數(shù)據(jù)結(jié)構(gòu):學(xué)號+姓名+性別+出生日期+班級編號+入學(xué)時(shí)間+住址+備注簡要說明:該學(xué)生信息管理系統(tǒng)的主要結(jié)構(gòu),定義了一個(gè)學(xué)生的基本信息 數(shù)據(jù)項(xiàng)數(shù)據(jù)字典數(shù)據(jù)名: 學(xué)號存儲(chǔ)處: 學(xué)生信息表數(shù)據(jù)元素:類型:字符型 長度:50 含義:學(xué)生的唯一標(biāo)識(shí)簡要說明:在學(xué)生信息表
9、中可以唯一的標(biāo)識(shí)每一位學(xué)生數(shù)據(jù)名: 入學(xué)時(shí)間存儲(chǔ)處: 學(xué)生信息表數(shù)據(jù)元素:類型:datetime 長度:8 含義:學(xué)生的入學(xué)時(shí)間信息簡要說明:記錄每一位學(xué)生的入學(xué)時(shí)間 數(shù)據(jù)加工數(shù)據(jù)字典項(xiàng)目名: 添加學(xué)生信息輸入: 學(xué)生信息輸出:簡要說明:可以添加學(xué)生信息項(xiàng)目名: 修改學(xué)生信息輸入: 學(xué)生信息(2)、數(shù)據(jù)名稱:班級信息數(shù)據(jù)流數(shù)據(jù)字典數(shù)據(jù)名: 錄入班級的基本信息來源: 管理員數(shù)據(jù)結(jié)構(gòu):班級編號+班級名稱+輔導(dǎo)員+系名稱+班主任簡要說明:該學(xué)生信息管理系統(tǒng)的主要結(jié)構(gòu)之一,定義了一個(gè)班級的基本信息 數(shù)據(jù)項(xiàng)數(shù)據(jù)字典數(shù)據(jù)名: 班級編號存儲(chǔ)處: 班級信息表數(shù)據(jù)元素:類型:字符型 長度:50 含義:班級的唯一
10、標(biāo)識(shí)簡要說明:在班級信息表中可以唯一的標(biāo)識(shí)每一門課程數(shù)據(jù)名: 班主任存儲(chǔ)處: 班級信息表數(shù)據(jù)元素:類型:字符 長度:50 含義:該課程的負(fù)責(zé)人簡要說明:記錄每一個(gè)班級的班主任 數(shù)據(jù)加工數(shù)據(jù)字典項(xiàng)目名: 添加班級信息輸入: 班級信息輸出:簡要說明:可以添加班級信息項(xiàng)目名: 修改班級信息輸入: 班級信息輸出:簡要說明:可以修改錯(cuò)誤的班級信息(3)、數(shù)據(jù)名稱:學(xué)生成績信息數(shù)據(jù)流數(shù)據(jù)字典數(shù)據(jù)名: 錄入學(xué)生成績信息來源: 管理員數(shù)據(jù)結(jié)構(gòu):學(xué)號+課程編號+成績簡要說明:該學(xué)生信息管理系統(tǒng)的主要結(jié)構(gòu)之一 數(shù)據(jù)項(xiàng)數(shù)據(jù)字典數(shù)據(jù)名: 學(xué)號存儲(chǔ)處: 成績信息表數(shù)據(jù)元素:類型:字符型 長度:50 含義:學(xué)生的唯一標(biāo)識(shí)
11、簡要說明:在成績信息表中可以唯一的標(biāo)識(shí)每一位學(xué)生數(shù)據(jù)名: 成績存儲(chǔ)處: 成績信息表數(shù)據(jù)元素:類型:numeric 長度:9 含義:學(xué)生的成績信息簡要說明:記錄每一位學(xué)生的成績信息 數(shù)據(jù)加工數(shù)據(jù)字典項(xiàng)目名: 添加成績信息輸入: 成績信息輸出:簡要說明:可以添加成績信息項(xiàng)目名: 查詢成績信息輸入: 輸出: 成績信息簡要說明:可以查詢每一位學(xué)生的成績信息(4)、數(shù)據(jù)名稱:課程信息表數(shù)據(jù)流數(shù)據(jù)字典數(shù)據(jù)名: 錄入課程的基本信息來源: 管理員數(shù)據(jù)結(jié)構(gòu):課程編號+課程名稱+課程類型+開課時(shí)間+學(xué)時(shí)+學(xué)分簡要說明:該學(xué)生信息管理系統(tǒng)的主要結(jié)構(gòu)之一 數(shù)據(jù)項(xiàng)數(shù)據(jù)字典數(shù)據(jù)名: 課程編號存儲(chǔ)處: 課程信息表數(shù)據(jù)元素:
12、類型:字符型 長度:50 含義:課程的唯一標(biāo)識(shí)簡要說明:在課程信息表中可以唯一的標(biāo)識(shí)每一門課程數(shù)據(jù)名: 開課時(shí)間存儲(chǔ)處: 課程信息表數(shù)據(jù)元素:類型:datetime 長度:8 含義:學(xué)生的開課時(shí)間信息簡要說明:記錄每一門的課程的開課時(shí)間 數(shù)據(jù)加工數(shù)據(jù)字典項(xiàng)目名: 添加課程信息輸入: 課程信息輸出:簡要說明:可以添加課程信息項(xiàng)目名: 修改課程信息輸入: 課程信息輸出:簡要說明:可以修改錯(cuò)誤的課程信息2.4 系統(tǒng)E-R圖繪制學(xué)生管理信息系統(tǒng)的E-R圖,如圖2-3所示。成 績課 程選修考試選修111nnm學(xué) 生考試n1班 級圖2.3學(xué)生管理信息系統(tǒng)的E-R圖學(xué) 生姓名學(xué)號性別出生日期班級編號電話號碼
13、入學(xué)時(shí)間備注住址圖2.4 學(xué)生實(shí)體圖班 級班級編號班級名稱輔導(dǎo)員系名稱班主任圖2.5 班級實(shí)體圖課 程課程編號課程名稱課程類型開課時(shí)間學(xué)時(shí)學(xué)分 圖2.6課程實(shí)體圖成 績學(xué)號課程編號成績圖2.7 成績實(shí)體圖第三章 系統(tǒng)概要設(shè)計(jì)3.1 合理方案設(shè)計(jì)在需求分析的基礎(chǔ)上,尋找實(shí)現(xiàn)學(xué)生管理信息系統(tǒng)的各種不同的方案,并選取若干個(gè)合理方案,經(jīng)分析比較,從中選出一個(gè)最佳方案。本方案是在Visual Basic 6.0、SQL Server2000的環(huán)境下,實(shí)現(xiàn)對學(xué)生管理信息系統(tǒng)的用戶登陸、學(xué)生信息管理、班級信息管理、學(xué)生成績管理、課程信息管理、用戶信息管理等功能。3.2 系統(tǒng)功能模塊設(shè)計(jì)學(xué)生管理信息系統(tǒng)功能包
14、括可視化窗口,對各種信息的添加、修改、刪除和查詢等具體功能如圖3-1所示。學(xué)生管理信息系統(tǒng)學(xué)生信息管理課程信息管理用戶信息管理用戶信息添加用戶密碼修改學(xué)生信息添加學(xué)生信息修改學(xué)生信息刪除學(xué)生信息查詢班級信息管理班級信息添加班級信息修改班級信息刪除班級信息查詢課程信息添加課程信息修改課程信息刪除課程信息查詢學(xué)生成績管理學(xué)生成績添加學(xué)生成績修改學(xué)生成績刪除學(xué)生成績查詢圖3.1 學(xué)生管理信息系統(tǒng)功能模塊3.3數(shù)據(jù)庫設(shè)計(jì)在需求分析階段所確定的學(xué)生管理信息系統(tǒng)數(shù)據(jù)需求的基礎(chǔ)上,進(jìn)一步設(shè)計(jì)數(shù)據(jù)庫。1. 系統(tǒng)用戶數(shù)據(jù)表(用戶信息表)記錄系統(tǒng)所有用戶名和密碼信息,表中的各個(gè)字段以及各個(gè)字段的說明如表3-1所示
15、:表3-1 用戶信息表結(jié)構(gòu)列 名數(shù)據(jù)類型長 度說 明用戶名varchar50允許空密碼varchar50允許空用戶類型char10允許空2. 學(xué)生信息表記錄學(xué)生學(xué)號、姓名等基本信息,表中的各個(gè)字段以及各個(gè)字段的說明如表3-2所示:表3-2 學(xué)生信息表結(jié)構(gòu)列 名數(shù)據(jù)類型長 度說 明學(xué)號varchar50主 鍵姓名varchar50允許空性別varchar10允許空出生日期datetime8允許空班級編號varchar50允許空電話號碼varchar50允許空入學(xué)時(shí)間datetime8允許空住址varchar100允許空備注varchar200允許空3. 班級信息表記錄班級編號、班級名稱及相關(guān)的信
16、息,表中各個(gè)字段以及各個(gè)字段的說明如表3-3所示:列 名數(shù)據(jù)類型長 度說 明班級編號varchar50主 鍵班級名稱varchar50允許空輔導(dǎo)員varchar50允許空系名稱varchar50允許空班主任varchar50允許空表3-3 班級信息表結(jié)構(gòu) 4. 課程信息表記錄課程編號、課程名稱等相關(guān)信息,表中各個(gè)字段以及各個(gè)字段的說明如表3-4所示:列 名數(shù)據(jù)類型長 度說 明課程編號varchar50主 鍵課程名稱varchar50允許空課程類型varchar50允許空開課時(shí)間carhar10允許空課時(shí)int4允許空學(xué)分int4允許空表3-4 課程信息表結(jié)構(gòu)5. 學(xué)生成績表記錄學(xué)生學(xué)號、課程編
17、號及相關(guān)的成績,表中各個(gè)字段以及各個(gè)字段的說明如表3-5所示:表3-5 學(xué)生成績表結(jié)構(gòu)列 名數(shù)據(jù)類型長 度說 明學(xué)號varchar50主 鍵課程編號varchar50主 鍵成績numeric9允許空 第四章 系統(tǒng)詳細(xì)設(shè)計(jì)4.1 數(shù)據(jù)庫及表創(chuàng)建啟動(dòng)SQL2000 Server,右擊“數(shù)據(jù)庫”點(diǎn)擊“新建數(shù)據(jù)庫”,在彈出的“數(shù)據(jù)庫屬性”對話框中可鍵入數(shù)據(jù)庫名及其它信息,如圖4-1所示:圖4.1 新建數(shù)據(jù)庫 新建表數(shù)據(jù)庫創(chuàng)建完畢后,點(diǎn)擊可打開。右擊“表”選擇“新建表”,可以進(jìn)行表的創(chuàng)建以及進(jìn)行相關(guān)的表屬性設(shè)置。1. 用戶信息表如圖4-2所示:圖4.2 新建用戶信息表2. 學(xué)生信息表如圖4-3所示:圖4
18、.3 新建學(xué)生信息表3. 班級信息表如圖4-4所示:圖4.4 新建班級信息表4. 課程信息表如圖4-5所示:圖4.5 新建課程信息表5. 學(xué)成成績表如圖4-6所示:圖4.6 新建學(xué)生成績表 設(shè)計(jì)表創(chuàng)建完表后右擊對應(yīng)表名“打開表”“返回所有行”,可對表進(jìn)行添加、修改、插入、刪除等相應(yīng)編輯操作。1. 設(shè)計(jì)用戶信息表如圖4-7所示:圖4.7 設(shè)計(jì)用戶信息表2. 設(shè)計(jì)學(xué)生信息表如圖4-8所示:圖4.8 設(shè)計(jì)學(xué)生信息表3. 設(shè)計(jì)班級信息表如圖4-9所示: 圖4.9 設(shè)計(jì)班級信息表4. 設(shè)計(jì)課程信息表如圖4-10所示:圖4.10 設(shè)計(jì)課程信息表5. 設(shè)計(jì)學(xué)生成績表如圖4-11所示:圖4.11 設(shè)計(jì)學(xué)生成績
19、表4.2 結(jié)構(gòu)程序設(shè)計(jì) 添加信息程序流程圖繪制添加信息流程圖,如圖4-12所示。否是編輯信息輸入無誤添加成功結(jié)束開始圖4.12 添加信息 修改信息程序流程圖繪制修改信息流程圖如圖4-13所示。修改信息編輯信息輸入無誤是否結(jié)束開始圖4.13 修改信息 刪除信息程序流程圖繪制刪除信息流程圖如圖4-14所示。無法刪除開始否是否是是否刪除不刪除正在使用刪除成功結(jié)束圖4.14 刪除信息 查詢信息程序流程圖繪制查詢信息流程圖如圖4-15所示是提示不存在信息是否存在顯示信息如入查詢信息數(shù)據(jù)庫否開始結(jié)束圖4.15 查詢信息 系統(tǒng)程序流程圖采用自頂向下、逐步求精的程序設(shè)計(jì)方法,使用順序、選擇和循環(huán)這3種基本控制
20、結(jié)構(gòu)進(jìn)行連接,并且每個(gè)代碼塊只有一個(gè)入口和出口。4.3 人機(jī)界面設(shè)計(jì)認(rèn)真處理好系統(tǒng)響應(yīng)時(shí)間、用戶幫助設(shè)施、出錯(cuò)信息處理和命令交互這4個(gè)問題。先創(chuàng)建設(shè)計(jì)模型,接下來用原型實(shí)現(xiàn)這個(gè)設(shè)計(jì)模型并由用戶調(diào)試和評估原型,然后根據(jù)用戶意見修改原型。1. 系統(tǒng)響應(yīng)時(shí)間:穩(wěn)定在1秒。2. 用戶幫助設(shè)施:選擇附加的幫助設(shè)施。3. 出錯(cuò)信息處理:1)當(dāng)輸入用戶名不存在時(shí),給出提示;2)當(dāng)輸入密碼不正確時(shí),給出提示;3)當(dāng)查詢信息不存在時(shí),給出提示;4)其他出錯(cuò)提示。4. 命令交互:用戶既可以從菜單中選擇軟件功能,也可以通過鍵盤命令序列調(diào)用軟件功能。第五章 系統(tǒng)編碼與實(shí)現(xiàn)5.1 創(chuàng)建工程項(xiàng)目圖5.1 VB 6.0界面
21、1. 啟動(dòng)VB 6.0,出現(xiàn)VB 6.0運(yùn)行界面,如圖5-1所示:2. 點(diǎn)擊“文件”“保存工程”保存當(dāng)前工程文件。5.2 工程主窗體在VB程序設(shè)計(jì)中,主界面負(fù)責(zé)應(yīng)用程序的主界面,由它調(diào)用其它模塊。因此,主界面應(yīng)該具有操作性好、界面清晰、使用戶能夠很方便地找到所需功能的特點(diǎn)。本系統(tǒng)的主界面部在相應(yīng)的系統(tǒng)菜單組成,用戶只需要點(diǎn)擊相應(yīng)的菜單使可調(diào)出對應(yīng)的系統(tǒng)模塊。工程主窗體如圖5-2 所示。圖5.2 工程主窗體5.3 用戶登陸窗體本模塊用于用戶登陸窗體主要由文本框及命令按鈕組成,利用ADODC控件及DataGrid控件實(shí)現(xiàn)程序代碼與SQL數(shù)據(jù)的連接(如圖5-3所示)。圖5.3 用戶登陸窗體對應(yīng)代碼如
22、下:Option ExplicitPrivate Sub Command1_Click()Dim cn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim cn_str As StringDim rs_str As Stringcn_str = "driver=sql server;server=.;uid=sa;pwd=;database=XSXX"cn.Open cn_strrs_str = "select * from mima where name='" & Trim(T
23、ext1.Text) & "'"rs.Open rs_str, cn, adOpenKeyset, adLockOptimisticIf Text1.Text <> "" And Text2.Text <> "" Then If rs.RecordCount > 0 Then If Text2.Text = Trim(rs.Fields("code") Then 'MsgBox "成功登錄!", 64, "提示" MDIf
24、rm_main.Show Unload Me 'Me.Hide Else MsgBox "輸入的密碼不對,請重新輸入!", 64, "提示" Text2.SetFocus Text2.SelStart = 0 Text2.SelLength = Len(Text2.Text) End If Else MsgBox "沒有該操作員!", 64, "提示" End IfElse If Text1.Text = "" And Text2.Text <> "" T
25、hen MsgBox "請輸入操作員!", 64, "提示" Text1.SetFocus ElseIf Text1.Text <> "" And Text2.Text = "" Then MsgBox "請輸入密碼!", 64, "提示" Text2.SetFocus ElseIf Text1.Text = "" And Text2.Text = "" Then MsgBox "請輸入操作員和密碼!",
26、 64, "提示" Text1.SetFocus End IfEnd IfEnd SubPrivate Sub Command2_Click()Unload MeEnd SubPrivate Sub Form_Load()Text1.Text = ""Text2.Text = ""Me.Icon = LoadPicture("")Label5.Caption = Year(Date)End SubPrivate Sub Text1_Change()End Sub5.4 學(xué)生信息窗體本窗體通過ADODC控件連接數(shù)據(jù)庫
27、的學(xué)生表,可以實(shí)現(xiàn)對學(xué)生信息的添加、修改刪除和查詢。 學(xué)生信息添加窗體學(xué)生信息的添加窗體,如圖5-4所示。圖5.4 學(xué)生信息添加窗體對應(yīng)代碼如下:Option ExplicitDim s, y, i, jDim rs As New ADODB.RecordsetPrivate Sub Form_Load()MS1.Rows = 2MS1.Cols = 10y = Array("序號", "學(xué)號(*)", "姓名", "性別", "出生日期", "班級編號", "電話
28、號碼", "入學(xué)時(shí)間", "住址", "備注")For i = 0 To MS1.Cols - 1 MS1.TextMatrix(0, i) = y(i) MS1.FixedAlignment(i) = 4 MS1.ColAlignment(i) = 4NextMS1.FixedRows = 1: MS1.FixedCols = 1MS1.TextMatrix(1, 0) = 1MS1.ColWidth(0) = 450Toolbar1.Buttons(8).Enabled = FalseToolbar1.Buttons(1
29、0).Enabled = FalseMS1.Enabled = FalseText1.Text = ""End SubPrivate Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)Unload MeMDIfrm_main.Picture1.Visible = TrueEnd SubPrivate Sub Form_Resize()MS1.Width = Me.Width - 200MS1.Height = Me.HeightFor i = 1 To MS1.Cols - 1 MS1.ColWidt
30、h(i) = MS1.Width / 9.3NextEnd SubPrivate Sub MS1_Click()If MS1.Row >= 1 And MS1.TextMatrix(MS1.Row - 1, MS1.Cols - 1) <> "" Then Text1.Visible = True Text1.SetFocusEnd IfEnd SubPrivate Sub MS1_EnterCell()Module1.entercell MS1, Text1End SubPrivate Sub MS1_RowColChange()For i = 1 To
31、 MS1.Rows - 1 MS1.TextMatrix(i, 0) = iNextEnd SubPrivate Sub Text1_Change()MS1.Text = Text1.TextEnd SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)If KeyCode = vbKeyUp Then Module1.moveup MS1, Text1End IfIf KeyCode = vbKeyRight Or KeyCode = vbKeyReturn Then Module1.moveright MS1,
32、Text1End IfIf KeyCode = vbKeyDown Then Module1.movedown MS1, Text1End IfIf KeyCode = vbKeyLeft Then Module1.moveleft MS1, Text1End IfEnd SubPrivate Sub MS1_Scroll()Text1.Width = MS1.CellWidth: Text1.Height = MS1.CellHeightText1.Left = MS1.Left + MS1.CellLeft: Text1.Top = MS1.CellTop + MS1.TopEnd Sub
33、Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)Select Case Button.Key Case "add" Toolbar1.Buttons(8).Enabled = True Toolbar1.Buttons(10).Enabled = True Text1.Visible = True: Text1.Text = "" MS1.Enabled = True Text1.SetFocus Text1.Width = MS1.CellWidth: Text1.
34、Height = MS1.CellHeight Text1.Left = MS1.CellLeft + MS1.Left: Text1.Top = MS1.CellTop + MS1.Top Case "save" For i = 1 To MS1.Rows - 1 If MS1.TextMatrix(i, 1) <> "" Then rs.Open "select * from student_info", cnn, adOpenKeyset, adLockOptimistic rs.AddNew For j = 1 T
35、o MS1.Cols - 1 If MS1.TextMatrix(i, j) <> "" Then rs.Fields(j - 1) = Trim(MS1.TextMatrix(i, j) Next j rs.Update rs.Close End If Next MsgBox "添加成功!", 64, "提示" For i = 1 To MS1.Rows - 1 For j = 1 To MS1.Cols - 1 MS1.TextMatrix(i, j) = "" Next j Next i MS1.
36、Rows = 2 Text1.Visible = False MS1.Enabled = False Toolbar1.Buttons(8).Enabled = False Toolbar1.Buttons(10).Enabled = False Case "cancel" For i = 1 To MS1.Rows - 1 For j = 1 To MS1.Cols - 1 MS1.TextMatrix(i, j) = "" Next j Next i MS1.Rows = 2 Text1.Visible = False MS1.Enabled = F
37、alse Toolbar1.Buttons(8).Enabled = False Toolbar1.Buttons(10).Enabled = False Case "close" Unload Me MDIfrm_main.Picture1.Visible = TrueEnd SelectEnd Sub 學(xué)生信息刪改(刪除、修改)窗體學(xué)生信息的刪改窗體,如圖5-5所示。圖5.5 學(xué)生信息刪改窗體對應(yīng)代碼如下:Option ExplicitDim i As IntegerPrivate Sub Command1_Click()Adodc1.RecordSource = &q
38、uot;select * from student_info where student_info." & Combo1.Text & " like + '" & Text1.Text & "' + '%'"Adodc1.RefreshEnd SubPrivate Sub Command2_Click()End SubPrivate Sub Command3_Click()If Adodc1.Recordset.RecordCount <> 0 ThenEnd IfEn
39、d SubPrivate Sub Command4_Click()If Adodc1.Recordset.RecordCount <> 0 ThenEnd IfEnd SubPrivate Sub Command5_Click()End SubPrivate Sub Command6_Click()DataGrid1.AllowUpdate = TrueCommand9.Enabled = TrueEnd SubPrivate Sub Command7_Click()'DataGrid1.AllowDelete = TrueDim iOn Error Resume Next
40、i = MsgBox("是否確定刪除該記錄?", 64, "提示")If i = vbOK Then Adodc1.RefreshEnd IfEnd SubPrivate Sub Command8_Click()MDIfrm_main.Picture1.Visible = TrueUnload MeEnd SubPrivate Sub Command9_Click()DataGrid1.AllowUpdate = FalseDataGrid1.AllowDelete = FalseDataGrid1.RefreshMsgBox "操作成功!&q
41、uot;, 64, "提示"Command9.Enabled = FalseEnd SubPrivate Sub Form_Activate()Combo1.AddItem "學(xué)號"Combo1.AddItem "姓名"Combo1.ListIndex = 0Text1.Text = ""Command9.Enabled = FalseEnd SubPrivate Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)MDIfrm_main.Pi
42、cture1.Visible = TrueEnd SubPrivate Sub Form_Resize()Frame1.Width = Me.Width - 300DataGrid1.Width = Me.Width - 300DataGrid1.Height = Me.HeightFor i = 0 To 8 DataGrid1.Columns(i).Width = (DataGrid1.Width - 450) / 9NextEnd SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)If KeyCode =
43、vbKeyReturn Then Command1.SetFocusEnd Sub 學(xué)生信息查詢窗體學(xué)生信息的查詢窗體,如圖5-6所示。圖5.6 學(xué)生信息查詢窗體對應(yīng)代碼如下:Option ExplicitDim i As IntegerPrivate Sub Command1_Click()Select Case Combo2.Text Case Is = "like" Adodc1.RecordSource = "select * from student_info where student_info." & Combo1.Text &am
44、p; " like '%' + '" & Text1.Text & "' + '%' " Adodc1.Refresh Case Is = "=" Adodc1.RecordSource = "select * from student_info where student_info." & Combo1.Text & " = '" & Text1.Text & "'&quo
45、t; Adodc1.RefreshEnd SelectEnd SubPrivate Sub Command2_Click()Unload MeMDIfrm_main.Picture1.Visible = TrueEnd SubPrivate Sub Form_Activate()Combo1.AddItem ("學(xué)號")Combo1.AddItem ("姓名")Combo1.AddItem ("班級編號")Combo1.ListIndex = 0Combo2.AddItem ("like")Combo2.AddIt
46、em ("=")Combo2.ListIndex = 1Text1.Text = ""End SubPrivate Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)MDIfrm_main.Picture1.Visible = TrueEnd SubPrivate Sub Form_Resize()Shape1.Width = Me.Width - 300DataGrid1.Width = Me.Width - 300DataGrid1.Height = Me.HeightFor i = 0 To 8 DataGrid1.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 經(jīng)濟(jì)法基礎(chǔ)規(guī)范解讀試題及答案
- 2025年VFP考試考生分享試題及答案
- C語言面向?qū)ο笳J(rèn)識(shí)試題及答案
- 邏輯嚴(yán)謹(jǐn)性的測試題目試題及答案
- 四級嵌入式開發(fā)考試要點(diǎn)試題及答案
- 輕松搞定C語言考試試題及答案
- 測試驅(qū)動(dòng)開發(fā)(TDD)的實(shí)施試題及答案
- 2025年計(jì)算機(jī)二級ACCESS考試的應(yīng)試技巧與試題及答案
- 考前必看嵌入式四級考試試題及答案
- 2025年計(jì)算機(jī)基礎(chǔ)知識(shí)試題及答案
- 智能教育技術(shù)驅(qū)動(dòng)的個(gè)性化學(xué)習(xí)路徑優(yōu)化研究
- 基層治理現(xiàn)代化視角下“楓橋經(jīng)驗(yàn)”的實(shí)踐路徑與創(chuàng)新研究
- 通信光纜租用協(xié)議合同書
- 2024-2025部編版小學(xué)道德與法治一年級下冊期末考試卷及答案(三套)
- 帝國的興衰:修昔底德戰(zhàn)爭史學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 16J914-1 公用建筑衛(wèi)生間
- GB/T 9116-2010帶頸平焊鋼制管法蘭
- GB/T 31974-2015鈍化顆粒鎂
- GA 124-2013正壓式消防空氣呼吸器
- 內(nèi)痔并出血+外痔病歷模板
- 學(xué)生社會(huì)勞動(dòng)實(shí)踐表
評論
0/150
提交評論