




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、Good is good, but better carries it.精益求精,善益求善。VB面向?qū)ο蟪绦蛟O(shè)計學(xué)生信息管理系統(tǒng)-華北科技學(xué)院課程設(shè)計說明書(VB面向?qū)ο蟪绦蛟O(shè)計)班級:*姓名:*設(shè)計題目:學(xué)生信息管理系統(tǒng)設(shè)計時間:2009.2.23至2009.3.5指導(dǎo)教師:楊月江評語:_評閱成績:評閱教師:面相對象程序設(shè)計(VB)課程設(shè)計報告實驗題目:學(xué)生信息管理系統(tǒng)實驗?zāi)康模寒斀窠逃谄占?,學(xué)校要對每位同學(xué)的基本信息情況進行統(tǒng)計整理,如何對信息進行保存、查詢無疑很重要,同時滿足信息管理者和查詢者的使用。而系統(tǒng)的安全也相當重要,防止惡意者的竄改給使用者帶來極大不便。在本系統(tǒng)中將實現(xiàn)數(shù)據(jù)庫
2、應(yīng)用系統(tǒng)最基本的幾種功能,即對信息的保存、增加、瀏覽、修改、刪除以及查詢,同時還提供一定的安全功能。實驗設(shè)備及環(huán)境:PC兼容機、Windows操作系統(tǒng)、VB軟件等。功能模塊簡介和系統(tǒng)結(jié)構(gòu)圖學(xué)生信息管理系統(tǒng)學(xué)生成績查詢安全機制基本情況管理查看報表各專業(yè)人數(shù)統(tǒng)計學(xué)生信息編輯、瀏覽成績統(tǒng)計情況登錄時間控制鎖定密碼修改密碼登錄基本情況管理模塊學(xué)生信息編輯模塊是管理員可以對學(xué)生基本信息及成績進行添加、修改、刪除等操作,而學(xué)生則不可以;成績統(tǒng)計情況模塊可以以表格和圖表的形式顯示前三名同學(xué)的平均成績和最低成績;各專業(yè)人數(shù)統(tǒng)計模塊以直方圖圖表形式顯示各專業(yè)的總?cè)藬?shù)。學(xué)生成績查詢管理員可以添加、修改、刪除學(xué)生的
3、專業(yè)、學(xué)號、姓名,并以網(wǎng)格顯示對應(yīng)學(xué)號學(xué)生的成績,而學(xué)生只能瀏覽信息。查看報表可以查看學(xué)生的基本情況,包括學(xué)號、姓名、系別、專業(yè)、出生年月等信息。安全機制密碼登錄用戶登錄時要輸入用戶名、用戶身份和密碼,這三項一一對應(yīng)才能登錄此系統(tǒng),并根據(jù)用戶身份限制相應(yīng)操作。密碼修改用戶登錄時有初始密碼,為保護個人隱私,防止他人盜用竄改,成功登錄系統(tǒng)后可以進行密碼修改。登錄時間控制鎖定如果用戶三次登錄出現(xiàn)錯誤,系統(tǒng)就會鎖定,要求用戶一分鐘后再嘗試重新登錄(為方便操作,此系統(tǒng)鎖定時間設(shè)置較短,可以更改延長)。在鎖定未解除時登錄,系統(tǒng)會提示您還有多長時間才可以登錄。這有效防止惡意者頻繁嘗試登錄,竄改信息。系統(tǒng)的主
4、要界面設(shè)計及運行說明:1.登錄界面當用戶輸入的信息有錯誤時,系統(tǒng)會提示你是用戶名錯誤還是密碼錯誤。登錄窗體的Borderstyle屬性設(shè)置為0-None,畫面美觀。如圖1、圖2所示。圖1錯誤登錄提示圖圖2登錄鎖定圖當用戶三次登錄都錯誤時,系統(tǒng)會提示您“登錄錯誤已達3次,請1分鐘后重新登錄”;若在1分鐘內(nèi)登錄,系統(tǒng)會提示還要多長時間才可以登錄。這提高了系統(tǒng)的安全系數(shù),防止惡意者頻繁嘗試登錄。2.系統(tǒng)主界面主界面為MDI窗體,通過菜單編輯器建立系統(tǒng)菜單,并使用工具欄,設(shè)置了“密碼修改”和“信息瀏覽”兩個命令按鈕,當鼠標指向命令按鈕時,有相應(yīng)文本提示出現(xiàn)。單擊各個命令按鈕進行相關(guān)操作。如果登錄者身份
5、為“管理員”,則“學(xué)籍管理”下的“學(xué)生信息編輯”命令可用;若登錄者身份為“學(xué)生”,則該命令不可用。在主窗體中還使用了狀態(tài)欄,在第一個窗格中填寫文本,顯示設(shè)計者名稱;在第二個窗格中通過代碼顯示當前使用者姓名。并在后面的窗格中添加鐘表圖片,顯示當前時間;還可以顯示當前日期。窗體界面美觀大方,并盡量為使用者提供方便。如圖3所示。圖3主窗體運行界面圖3.學(xué)生信息編輯界面此模塊可以使管理者添加、刪除、修改以及查詢學(xué)生基本信息,當單擊“新增”命令時,該命令按鈕的Caption變?yōu)椤按_定”,同時,“刪除”和“修改”命令變灰,不能使用。填寫完信息后,單擊“確定”,則新信息成功錄入;若單擊“放棄”,則跳回當前記
6、錄。“修改”命令類似。如圖4所示。圖4學(xué)生信息編輯模塊運行效果圖4.成績統(tǒng)計界面此界面顯示平均成績在前三名的成績情況。如圖5所示。通過select語句實現(xiàn),添加ADO控件,分別與兩個表建立連接,adodc1的visibel屬性設(shè)為false。通過相對路徑設(shè)置adodc1的屬性,這樣在使用時,不會出現(xiàn)每次使用不同的電腦,因裝在不同的硬盤分區(qū)而重新連接,為使用者提供了便利。具體代碼如下:PrivateSubForm_Load()Adodc1.ConnectionString=Provider=Microsoft.Jet.OLEDB.3.51;PersistSecurityInfo=False;Da
7、taSource=&App.Path&stu.mdbAdodc1.CommandType=adCmdUnknownAdodc1.RecordSource=Selecttop3基本情況.姓名,Avg(成績)As平均成績,Min(成績)As最低成績From基本情況,成績情況Where基本情況.學(xué)號=成績情況.學(xué)號GroupBy基本情況.姓名,成績情況.學(xué)號OrderbyAvg(成績)desc;Adodc1.RefreshEndSub圖5成績統(tǒng)計模塊運行效果圖專業(yè)人數(shù)統(tǒng)計界面類似成績統(tǒng)計界面,就不再贅述。學(xué)生成績查詢界面運行此界面時單擊“查詢”命令,會彈出對話框讓你輸入要查詢的學(xué)號。運行后會在表格中
8、顯示學(xué)號、課程和成績。單擊“關(guān)閉”,退出此界面。如圖6所示。主要代碼如下:PrivateSubCommand1_Click()DimcAsStringc=InputBox$(請輸入學(xué)號,查找窗)Data1.RecordSource=select*from成績情況where學(xué)號like&c&Data1.RefreshIfData1.Recordset.EOFThenMsgBox無此學(xué)號!,提示Data1.RecordSource=成績情況Data1.RefreshEndIfEndSub圖6學(xué)生成績查詢運行效果圖密碼修改界面此窗體添加了一個隱藏的data1控件,使“密碼”與數(shù)據(jù)庫“用戶表”綁定,同
9、樣,使用的是相對路徑:PrivateSubForm_Load()Data1.DatabaseName=App.Path&用戶表.mdbData1.RecordSource=用戶表EndSub圖7密碼修改當密碼不正確,或新密碼為空,或“修改密碼”與“確認密碼”不同時,系統(tǒng)都會有相應(yīng)提示;成功修改密碼后,也會有提示。此過程主要通過if語句判斷實現(xiàn)。如圖7所示。信息查詢界面在此窗口,管理員可以進行添加、編輯、刪除等操作,而學(xué)生只能查看。它是將兩個數(shù)據(jù)庫中的內(nèi)容組合在一起顯示的。如圖8所示。圖8信息查詢運行效果圖報表顯示數(shù)據(jù)庫“基本情況”中的信息,可以使使用者對基本信息一覽無余,直觀方便。如圖9所示。
10、圖9報表五、程序的主要代碼:1、登錄模塊代碼:Publicyhm$,mm1$Dimnum%PrivateSubCommand1_Click()Dimyh$,mm$,a%yh=Trim(Text1.Text)OnErrorResumeNextDimmAsStringm=select*from用戶表where用戶名=&Trim(Text1.Text)&and用戶身份=&Trim(Combo1.Text)&Me.Data1.RecordSource=mMe.Data1.Refreshyh=Text1.Textmm=Text2.TextIfMe.Data1.Recordset.RecordCount=
11、0ThenMsgBox用戶名不存在或用戶身份錯誤,請重新輸入!,vbExclamation,提示num=num+1Elsemm=Text2.TextIfmm=Data1.Recordset.Fields(密碼)Thenyhm=yhmm1=Text2.Textsys_lock=Falsenum=0登錄.HideMDIForm1.ShowElseMsgBox密碼錯誤,請重新輸入!,輸入錯誤num=num+1Text2.Text=Text2.SetFocusEndIfEndIfIfnum=3ThenMsgBox登錄錯誤已達3次,請1分鐘后重新登錄,vbInformation,錯誤a=Minute(T
12、ime)*60+Second(Time)Setfso=CreateObject(scripting.filesystemobject)Settxtfile=fso.createtextfile(App.Path&time.txt,True)txtfile.write(a)txtfile.CloseEndEndIfEndSubPrivateSubCommand2_Click()EndEndSubPrivateSubForm_Load()Data1.DatabaseName=App.Path&用戶表.mdbData1.RecordSource=用戶表Combo1.Text=學(xué)生OnErrorGoT
13、oaOpenApp.Path&time.txtForInputAs#1Input#1,aClose#1b=Minute(Time)*60+Second(Time)c=b-CSng(a)Ifc60ThenMsgBox登錄錯誤已經(jīng)鎖定系統(tǒng),&60-c&秒鐘后登錄,vbInformation,提示EndElseKillApp.Path&time.txtEndIfa:EndSub2.主窗體代碼:PrivateSubcjcx_Click()成績查詢.ShowEndSubPrivateSubcjtj_Click()成績統(tǒng)計.ShowEndSubPrivateSubckbb_Click()DataRepor
14、t1.ShowEndSubPrivateSubMDIForm_Load()StatusBar1.Panels(2).Text=系統(tǒng)當前用戶:&登錄.yhmIfTrim(登錄.Combo1.Text)=管理員ThenMDIForm1.xsxxbj.Enabled=Truefrm基本情況.cmdAdd.Enabled=Truefrm基本情況.cmdCancel.Enabled=Truefrm基本情況.cmdDelete.Enabled=Truefrm基本情況.cmdEdit.Enabled=Truefrm基本情況.cmdUpdate.Enabled=Truefrm基本情況.cmdRefresh.E
15、nabled=TrueElseMDIForm1.xsxxbj.Enabled=Falsefrm基本情況.cmdAdd.Enabled=Falsefrm基本情況.cmdCancel.Enabled=Falsefrm基本情況.cmdDelete.Enabled=Falsefrm基本情況.cmdEdit.Enabled=Falsefrm基本情況.cmdUpdate.Enabled=Falsefrm基本情況.cmdRefresh.Enabled=FalseEndIfEndSubPrivateSubrstj_Click()人數(shù)統(tǒng)計.ShowEndSubPrivateSubtc_Click()EndEnd
16、SubPrivateSubToolbar1_ButtonClick(ByValButtonAsMSComctlLib.Button)SelectCaseButton.KeyCaseTmm修改密碼.ShowCaseTckfrm基本情況.ShowEndSelectEndSubPrivateSubxhcx_Click()X=MsgBox(請輸入要查詢的學(xué)號,查詢)EndSubPrivateSubxsxxbj_Click()信息管理.ShowEndSub3.成績查詢模塊代碼:PrivateSubCommand1_Click()DimcAsStringc=InputBox$(請輸入學(xué)號,查找窗)Data
17、1.RecordSource=select*from成績情況where學(xué)號like&c&Data1.RefreshIfData1.Recordset.EOFThenMsgBox無此學(xué)號!,提示Data1.RecordSource=成績情況Data1.RefreshEndIfEndSubPrivateSubCommand2_Click()UnloadMeEndSubPrivateSubForm_Load()Data1.DatabaseName=App.Path&stu.mdbEndSub4.人數(shù)統(tǒng)計模塊代碼:PrivateSubCommand1_Click()UnloadMeEndSubPriv
18、ateSubForm_Load()Adodc1.ConnectionString=Provider=Microsoft.Jet.OLEDB.3.51;PersistSecurityInfo=False;DataSource=&App.Path&stu.mdbAdodc1.CommandType=adCmdUnknownAdodc1.RecordSource=Select專業(yè),count(*)As人數(shù)From基本情況GroupBy專業(yè)Adodc1.RefreshEndSub5.學(xué)生信息編輯模塊代碼:PrivateSubCommand1_Click()Command2.Enabled=NotCom
19、mand2.EnabledCommand3.Enabled=NotCommand3.EnabledCommand4.Enabled=TrueIfCommand1.Caption=新增ThenCommand1.Caption=確認mbookmark=Data1.Recordset.BookmarkData1.Recordset.AddNewText1.SetFocusElseCommand1.Caption=新增Data1.Recordset.UpdateData1.Recordset.MoveLastEndIfEndSubPrivateSubCommand2_Click()i=MsgBox(確
20、定刪除當前信息嗎?,4+vbQuestion,提示)Ifi=6ThenOnErrorResumeNextData1.Recordset.DeleteData1.Recordset.MoveNextIfData1.Recordset.EOFThenData1.Recordset.MoveLastEndIfEndSubPrivateSubCommand3_Click()Command2.Enabled=NotCommand2.EnabledCommand1.Enabled=NotCommand1.EnabledCommand4.Enabled=TrueIfCommand3.Caption=修改Th
21、enCommand3.Caption=確認mbookmark=Data1.Recordset.BookmarkData1.Recordset.EditText1.SetFocusElseCommand3.Caption=修改Data1.Recordset.UpdateEndIfEndSubPrivateSubCommand4_Click()Command1.Caption=新增:Command3.Caption=修改Command1.Enabled=True:Command2.Enabled=TrueCommand3.Enabled=True:Command4.Enabled=Falsembo
22、okmark=Data1.Recordset.BookmarkData1.UpdateControlsData1.Recordset.Bookmark=mbookmarkEndSubPrivateSubCommand5_Click()DimmAsStringm=InputBox$(請輸入要查找的學(xué)生學(xué)號,查找窗)Data1.Recordset.FindFirst學(xué)號=&m&IfData1.Recordset.NoMatchThenMsgBox無此學(xué)號!,提示EndSubPrivateSubCommand6_Click()UnloadMeEndSubPrivateSubData1_Reposit
23、ion()Data1.Caption=基本情況:&(Data1.Recordset.AbsolutePosition+1)EndSubPrivateSubForm_Load()Adodc1.ConnectionString=Provider=Microsoft.Jet.OLEDB.3.51;PersistSecurityInfo=False;DataSource=&App.Path&stu.mdbData1.DatabaseName=App.Path&stu.mdbData1.RecordSource=基本情況Adodc1.CommandType=adCmdUnknownAdodc1.RecordSource=select*from成績情況Adodc1.RefreshAdodc1.Recordset.Find(學(xué)號=&Text1.Text&)EndSub6.修改密碼模塊代碼:Dimold$,nw$,rnew$PrivateSubCommand1_Click()old=
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- CJ/T 395-2012冷凝式燃氣暖浴兩用爐
- CJ/T 235-2006立式長軸泵
- CJ 5024-1997電子式出租汽車計價器
- 河北八大員證考試試題及答案
- Msoffice在考試中的實際應(yīng)用研究試題及答案
- 社會工作者的創(chuàng)新方法與實踐案例試題及答案
- 完整知識體系初級社會工作者試題及答案
- 信息管理三級考試實回顧及答案
- 考試趨勢2025年網(wǎng)絡(luò)規(guī)劃設(shè)計師的校驗機制及試題及答案
- 立體模具庫管理制度
- 六旋翼無人機的設(shè)計(畢業(yè)設(shè)計)
- 《低段培智學(xué)生行為習(xí)慣養(yǎng)成教育的研究》小課題研究中期報告
- TC4鈦合金拉拔工藝探索
- 八年級數(shù)學(xué)上冊《平方差公式》的教學(xué)反思(優(yōu)秀3篇)
- 填石路堤沉降差檢測記錄表
- “鄉(xiāng)村振興”戰(zhàn)略應(yīng)知應(yīng)會試題及答案(分享)
- 衢州萬達暖通工程施工方案(最終版)
- 學(xué)校端午假期致學(xué)生家長一封信
- 遺傳自制習(xí)題答案個我
- 鏈輪齒數(shù)尺寸對照表三
- 植物生理學(xué)第九章光形態(tài)建成.ppt
評論
0/150
提交評論