VB面向?qū)ο蟪绦蛟O(shè)計(jì)學(xué)生信息管理系統(tǒng)教學(xué)內(nèi)容_第1頁(yè)
VB面向?qū)ο蟪绦蛟O(shè)計(jì)學(xué)生信息管理系統(tǒng)教學(xué)內(nèi)容_第2頁(yè)
VB面向?qū)ο蟪绦蛟O(shè)計(jì)學(xué)生信息管理系統(tǒng)教學(xué)內(nèi)容_第3頁(yè)
VB面向?qū)ο蟪绦蛟O(shè)計(jì)學(xué)生信息管理系統(tǒng)教學(xué)內(nèi)容_第4頁(yè)
VB面向?qū)ο蟪绦蛟O(shè)計(jì)學(xué)生信息管理系統(tǒng)教學(xué)內(nèi)容_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Good is good, but better carries it.精益求精,善益求善。VB面向?qū)ο蟪绦蛟O(shè)計(jì)學(xué)生信息管理系統(tǒng)-華北科技學(xué)院課程設(shè)計(jì)說(shuō)明書(VB面向?qū)ο蟪绦蛟O(shè)計(jì))班級(jí):*姓名:*設(shè)計(jì)題目:學(xué)生信息管理系統(tǒng)設(shè)計(jì)時(shí)間:2009.2.23至2009.3.5指導(dǎo)教師:楊月江評(píng)語(yǔ):_評(píng)閱成績(jī):評(píng)閱教師:面相對(duì)象程序設(shè)計(jì)(VB)課程設(shè)計(jì)報(bào)告實(shí)驗(yàn)題目:學(xué)生信息管理系統(tǒng)實(shí)驗(yàn)?zāi)康模寒?dāng)今教育正在普及,學(xué)校要對(duì)每位同學(xué)的基本信息情況進(jìn)行統(tǒng)計(jì)整理,如何對(duì)信息進(jìn)行保存、查詢無(wú)疑很重要,同時(shí)滿足信息管理者和查詢者的使用。而系統(tǒng)的安全也相當(dāng)重要,防止惡意者的竄改給使用者帶來(lái)極大不便。在本系統(tǒng)中將實(shí)現(xiàn)數(shù)據(jù)庫(kù)

2、應(yīng)用系統(tǒng)最基本的幾種功能,即對(duì)信息的保存、增加、瀏覽、修改、刪除以及查詢,同時(shí)還提供一定的安全功能。實(shí)驗(yàn)設(shè)備及環(huán)境:PC兼容機(jī)、Windows操作系統(tǒng)、VB軟件等。功能模塊簡(jiǎn)介和系統(tǒng)結(jié)構(gòu)圖學(xué)生信息管理系統(tǒng)學(xué)生成績(jī)查詢安全機(jī)制基本情況管理查看報(bào)表各專業(yè)人數(shù)統(tǒng)計(jì)學(xué)生信息編輯、瀏覽成績(jī)統(tǒng)計(jì)情況登錄時(shí)間控制鎖定密碼修改密碼登錄基本情況管理模塊學(xué)生信息編輯模塊是管理員可以對(duì)學(xué)生基本信息及成績(jī)進(jìn)行添加、修改、刪除等操作,而學(xué)生則不可以;成績(jī)統(tǒng)計(jì)情況模塊可以以表格和圖表的形式顯示前三名同學(xué)的平均成績(jī)和最低成績(jī);各專業(yè)人數(shù)統(tǒng)計(jì)模塊以直方圖圖表形式顯示各專業(yè)的總?cè)藬?shù)。學(xué)生成績(jī)查詢管理員可以添加、修改、刪除學(xué)生的

3、專業(yè)、學(xué)號(hào)、姓名,并以網(wǎng)格顯示對(duì)應(yīng)學(xué)號(hào)學(xué)生的成績(jī),而學(xué)生只能瀏覽信息。查看報(bào)表可以查看學(xué)生的基本情況,包括學(xué)號(hào)、姓名、系別、專業(yè)、出生年月等信息。安全機(jī)制密碼登錄用戶登錄時(shí)要輸入用戶名、用戶身份和密碼,這三項(xiàng)一一對(duì)應(yīng)才能登錄此系統(tǒng),并根據(jù)用戶身份限制相應(yīng)操作。密碼修改用戶登錄時(shí)有初始密碼,為保護(hù)個(gè)人隱私,防止他人盜用竄改,成功登錄系統(tǒng)后可以進(jìn)行密碼修改。登錄時(shí)間控制鎖定如果用戶三次登錄出現(xiàn)錯(cuò)誤,系統(tǒng)就會(huì)鎖定,要求用戶一分鐘后再嘗試重新登錄(為方便操作,此系統(tǒng)鎖定時(shí)間設(shè)置較短,可以更改延長(zhǎng))。在鎖定未解除時(shí)登錄,系統(tǒng)會(huì)提示您還有多長(zhǎng)時(shí)間才可以登錄。這有效防止惡意者頻繁嘗試登錄,竄改信息。系統(tǒng)的主

4、要界面設(shè)計(jì)及運(yùn)行說(shuō)明:1.登錄界面當(dāng)用戶輸入的信息有錯(cuò)誤時(shí),系統(tǒng)會(huì)提示你是用戶名錯(cuò)誤還是密碼錯(cuò)誤。登錄窗體的Borderstyle屬性設(shè)置為0-None,畫面美觀。如圖1、圖2所示。圖1錯(cuò)誤登錄提示圖圖2登錄鎖定圖當(dāng)用戶三次登錄都錯(cuò)誤時(shí),系統(tǒng)會(huì)提示您“登錄錯(cuò)誤已達(dá)3次,請(qǐng)1分鐘后重新登錄”;若在1分鐘內(nèi)登錄,系統(tǒng)會(huì)提示還要多長(zhǎng)時(shí)間才可以登錄。這提高了系統(tǒng)的安全系數(shù),防止惡意者頻繁嘗試登錄。2.系統(tǒng)主界面主界面為MDI窗體,通過(guò)菜單編輯器建立系統(tǒng)菜單,并使用工具欄,設(shè)置了“密碼修改”和“信息瀏覽”兩個(gè)命令按鈕,當(dāng)鼠標(biāo)指向命令按鈕時(shí),有相應(yīng)文本提示出現(xiàn)。單擊各個(gè)命令按鈕進(jìn)行相關(guān)操作。如果登錄者身份

5、為“管理員”,則“學(xué)籍管理”下的“學(xué)生信息編輯”命令可用;若登錄者身份為“學(xué)生”,則該命令不可用。在主窗體中還使用了狀態(tài)欄,在第一個(gè)窗格中填寫文本,顯示設(shè)計(jì)者名稱;在第二個(gè)窗格中通過(guò)代碼顯示當(dāng)前使用者姓名。并在后面的窗格中添加鐘表圖片,顯示當(dāng)前時(shí)間;還可以顯示當(dāng)前日期。窗體界面美觀大方,并盡量為使用者提供方便。如圖3所示。圖3主窗體運(yùn)行界面圖3.學(xué)生信息編輯界面此模塊可以使管理者添加、刪除、修改以及查詢學(xué)生基本信息,當(dāng)單擊“新增”命令時(shí),該命令按鈕的Caption變?yōu)椤按_定”,同時(shí),“刪除”和“修改”命令變灰,不能使用。填寫完信息后,單擊“確定”,則新信息成功錄入;若單擊“放棄”,則跳回當(dāng)前記

6、錄?!靶薷摹泵铑愃?。如圖4所示。圖4學(xué)生信息編輯模塊運(yùn)行效果圖4.成績(jī)統(tǒng)計(jì)界面此界面顯示平均成績(jī)?cè)谇叭某煽?jī)情況。如圖5所示。通過(guò)select語(yǔ)句實(shí)現(xiàn),添加ADO控件,分別與兩個(gè)表建立連接,adodc1的visibel屬性設(shè)為false。通過(guò)相對(duì)路徑設(shè)置adodc1的屬性,這樣在使用時(shí),不會(huì)出現(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(成績(jī))As平均成績(jī),Min(成績(jī))As最低成績(jī)From基本情況,成績(jī)情況Where基本情況.學(xué)號(hào)=成績(jī)情況.學(xué)號(hào)GroupBy基本情況.姓名,成績(jī)情況.學(xué)號(hào)OrderbyAvg(成績(jī))desc;Adodc1.RefreshEndSub圖5成績(jī)統(tǒng)計(jì)模塊運(yùn)行效果圖專業(yè)人數(shù)統(tǒng)計(jì)界面類似成績(jī)統(tǒng)計(jì)界面,就不再贅述。學(xué)生成績(jī)查詢界面運(yùn)行此界面時(shí)單擊“查詢”命令,會(huì)彈出對(duì)話框讓你輸入要查詢的學(xué)號(hào)。運(yùn)行后會(huì)在表格中

8、顯示學(xué)號(hào)、課程和成績(jī)。單擊“關(guān)閉”,退出此界面。如圖6所示。主要代碼如下:PrivateSubCommand1_Click()DimcAsStringc=InputBox$(請(qǐng)輸入學(xué)號(hào),查找窗)Data1.RecordSource=select*from成績(jī)情況where學(xué)號(hào)like&c&Data1.RefreshIfData1.Recordset.EOFThenMsgBox無(wú)此學(xué)號(hào)!,提示Data1.RecordSource=成績(jī)情況Data1.RefreshEndIfEndSub圖6學(xué)生成績(jī)查詢運(yùn)行效果圖密碼修改界面此窗體添加了一個(gè)隱藏的data1控件,使“密碼”與數(shù)據(jù)庫(kù)“用戶表”綁定,同

9、樣,使用的是相對(duì)路徑:PrivateSubForm_Load()Data1.DatabaseName=App.Path&用戶表.mdbData1.RecordSource=用戶表EndSub圖7密碼修改當(dāng)密碼不正確,或新密碼為空,或“修改密碼”與“確認(rèn)密碼”不同時(shí),系統(tǒng)都會(huì)有相應(yīng)提示;成功修改密碼后,也會(huì)有提示。此過(guò)程主要通過(guò)if語(yǔ)句判斷實(shí)現(xiàn)。如圖7所示。信息查詢界面在此窗口,管理員可以進(jìn)行添加、編輯、刪除等操作,而學(xué)生只能查看。它是將兩個(gè)數(shù)據(jù)庫(kù)中的內(nèi)容組合在一起顯示的。如圖8所示。圖8信息查詢運(yùn)行效果圖報(bào)表顯示數(shù)據(jù)庫(kù)“基本情況”中的信息,可以使使用者對(duì)基本信息一覽無(wú)余,直觀方便。如圖9所示。

10、圖9報(bào)表五、程序的主要代碼: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用戶名不存在或用戶身份錯(cuò)誤,請(qǐng)重新輸入!,vbExclamation,提示num=num+1Elsemm=Text2.TextIfmm=Data1.Recordset.Fields(密碼)Thenyhm=yhmm1=Text2.Textsys_lock=Falsenum=0登錄.HideMDIForm1.ShowElseMsgBox密碼錯(cuò)誤,請(qǐng)重新輸入!,輸入錯(cuò)誤num=num+1Text2.Text=Text2.SetFocusEndIfEndIfIfnum=3ThenMsgBox登錄錯(cuò)誤已達(dá)3次,請(qǐng)1分鐘后重新登錄,vbInformation,錯(cuò)誤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登錄錯(cuò)誤已經(jīng)鎖定系統(tǒng),&60-c&秒鐘后登錄,vbInformation,提示EndElseKillApp.Path&time.txtEndIfa:EndSub2.主窗體代碼:PrivateSubcjcx_Click()成績(jī)查詢.ShowEndSubPrivateSubcjtj_Click()成績(jī)統(tǒng)計(jì).ShowEndSubPrivateSubckbb_Click()DataRepor

14、t1.ShowEndSubPrivateSubMDIForm_Load()StatusBar1.Panels(2).Text=系統(tǒng)當(dā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)計(jì).ShowEndSubPrivateSubtc_Click()EndEnd

16、SubPrivateSubToolbar1_ButtonClick(ByValButtonAsMSComctlLib.Button)SelectCaseButton.KeyCaseTmm修改密碼.ShowCaseTckfrm基本情況.ShowEndSelectEndSubPrivateSubxhcx_Click()X=MsgBox(請(qǐng)輸入要查詢的學(xué)號(hào),查詢)EndSubPrivateSubxsxxbj_Click()信息管理.ShowEndSub3.成績(jī)查詢模塊代碼:PrivateSubCommand1_Click()DimcAsStringc=InputBox$(請(qǐng)輸入學(xué)號(hào),查找窗)Data

17、1.RecordSource=select*from成績(jī)情況where學(xué)號(hào)like&c&Data1.RefreshIfData1.Recordset.EOFThenMsgBox無(wú)此學(xué)號(hào)!,提示Data1.RecordSource=成績(jī)情況Data1.RefreshEndIfEndSubPrivateSubCommand2_Click()UnloadMeEndSubPrivateSubForm_Load()Data1.DatabaseName=App.Path&stu.mdbEndSub4.人數(shù)統(tǒng)計(jì)模塊代碼: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=確認(rèn)mbookmark=Data1.Recordset.BookmarkData1.Recordset.AddNewText1.SetFocusElseCommand1.Caption=新增Data1.Recordset.UpdateData1.Recordset.MoveLastEndIfEndSubPrivateSubCommand2_Click()i=MsgBox(確

20、定刪除當(dāng)前信息嗎?,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=確認(rèn)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$(請(qǐng)輸入要查找的學(xué)生學(xué)號(hào),查找窗)Data1.Recordset.FindFirst學(xué)號(hào)=&m&IfData1.Recordset.NoMatchThenMsgBox無(wú)此學(xué)號(hào)!,提示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成績(jī)情況Adodc1.RefreshAdodc1.Recordset.Find(學(xué)號(hào)=&Text1.Text&)EndSub6.修改密碼模塊代碼:Dimold$,nw$,rnew$PrivateSubCommand1_Click()old=

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論