【正文】
LONG 4 4 期末成績 LONG 4 5 總評成績 LONG 4 6 班級 char 20 總分表結(jié)構(gòu): 表 畢業(yè)論文 —— 學(xué)生信息管理系統(tǒng) 編號 字段名稱 字段類型 字段寬度 1 學(xué)號 CHAR 15 2 期中總分 LONG 4 3 期末總分 LONG 4 4 期中名次 LONG 4 5 期末名次 LONG 4 6 班級 char 20 第五章 詳細(xì)設(shè)計 根據(jù)系統(tǒng)的主要功能及上一章的總體設(shè)計,系統(tǒng)開發(fā)進入第二個階段:詳細(xì)設(shè)計。在這一階段的工作中,主要任務(wù)有以下幾項: 根據(jù)原型化 的開發(fā)原則,為系統(tǒng)的每個模塊功能進行界面設(shè)計,作為進一步優(yōu)化的基礎(chǔ)。 進行系統(tǒng)的流程分析,為模塊的細(xì)化做好準(zhǔn)備。 對每個模塊進行詳細(xì)的算法設(shè)計。 3. 1 系統(tǒng)界面設(shè)計 一、登錄及系統(tǒng)主窗口界面設(shè)計 該部分界面主要包括登錄窗口、系統(tǒng)主窗口、修改密碼窗口。 登錄窗口界面: 本系統(tǒng)中使用到的數(shù)據(jù)表主要有班級表、成績表、繳費表、課程表、學(xué)生檔案、用戶資料,由這六個表,組成了名為信息的數(shù)據(jù)庫(如圖一)。其中學(xué)生檔案是本系統(tǒng)主要的 畢業(yè)論文 —— 學(xué)生信息管理系統(tǒng) (圖一) 一張表,所有信息都是根據(jù)這張學(xué)生檔案進行有關(guān)的操作,主要的字段有:學(xué)號、姓名、年級、專業(yè)、性別、出生年月、民族、籍貫、政治面貌、家庭地址、郵政編碼、聯(lián)系電話、入學(xué)時間、備注。其中日期的數(shù)據(jù)類型為日期 /時間天型,其它的數(shù)據(jù)類型為文本型;成績表中字段為:學(xué)號、姓名、年級、專業(yè)、學(xué)期、考試時間、考試科目、考試地點、課程性質(zhì)、科目分?jǐn)?shù)、違紀(jì)類型、備注;課程表中字段為:專業(yè)、年級、學(xué)期、課程名稱、教材、任課老師、課時、上課地點、課程性質(zhì)、考試性質(zhì);用戶資料中的字段包括:用戶名、密碼、身份。 數(shù)據(jù)庫與 VB的連接:本系統(tǒng)的數(shù)據(jù)鏈接采用的是 ADO方法,打開控制面板,打開 ODBC數(shù)據(jù)源圖標(biāo),選擇“系統(tǒng) DSN”標(biāo)簽,點擊“添加”按鈕,在彈出的“創(chuàng)建新數(shù)據(jù)源”對話框中選擇名稱為“ Microsoft Access Drive( *.mdb)”,點擊“完成”按鈕,在 ODBC Microsoft Access 安裝對話框中在數(shù)據(jù)源名中輸入信息,在數(shù)據(jù)庫這個框中, 單擊“選擇”按鈕,在彈出的選擇數(shù)據(jù)庫這一對話框架中,在驅(qū)動器下拉列表框中選擇本系統(tǒng)數(shù)據(jù)庫所在驅(qū)動器,在目錄中選擇庫所在的文件夾,在文件類型中選擇選“ Access 數(shù) 據(jù)庫( *.mdb)”,在數(shù)據(jù)庫名中選擇本系統(tǒng)的數(shù)據(jù)庫,點擊“確定”按鈕即完成數(shù)據(jù)鏈接。 在 VB中,用 ADODC鏈接數(shù)據(jù)庫,用 DataGrid或 DATA將庫中的數(shù)據(jù)在界面中顯示出來,本系統(tǒng)采用 DataGrid。在界面上右擊 Adodc控制,在彈出的快捷菜單中選擇屬性,在屬性對話框中,在“屬性”這一標(biāo)簽中, 選中單選框“ Use ODBC Data Source Name”,并在下拉文本框中選擇已經(jīng)配置好的數(shù)據(jù)源名信息,再在“ RecordSoure”標(biāo)簽中,在 Commard Text( SQL)文本框中輸入查詢語句 ,如: select * from 學(xué)生檔案。同時,將桌面的 DataGrid控件選中,在屬性框中,將它的 Datasoure設(shè)為 Adodc。 我們可以設(shè)置 DataGrid 控件的外觀:選中該控件,右擊,在彈出的快捷菜單中選擇“檢索字段”,在彈出的對話框中單擊“確定”,這時,表格中出現(xiàn)了表的字段。然后再右擊,同樣,在彈出的快捷菜單中選擇“編輯”,我們就可以所在的表格的寬度進行調(diào)整。 畢業(yè)論文 —— 學(xué)生信息管理系統(tǒng) 第六章 系統(tǒng)具體實現(xiàn) 各功能的實現(xiàn) 課程管理:課程設(shè)置 (如:界面如圖二) (圖 二) 運行程序后,進入課程管理模塊,課程管理模塊的第一塊是課程設(shè)置,在這模塊中可以把專業(yè)、年級、學(xué)期、課程名稱、教材、任課老師、課時、上課地點、課程性質(zhì)和考試性質(zhì)等信息輸入,以便使用。 下面為其代碼: Private Sub Command1_Click() Dim myCon As New Dim myRs As New Dim ZhuanYe, NianJi, XueQi, KeCheng, JiaoCai, RenKLS, KeShi, ShangKeDD, KeChengXZ, KaoShiXZ As String ZhuanYe = NianJi = XueQi = KeCheng = JiaoCai = RenKLS = KeShi = ShangKeDD = KeChengXZ = KaoShiXZ = 畢業(yè)論文 —— 學(xué)生信息管理系統(tǒng) If Trim(ZhuanYe) = Or Trim(NianJi) = Or Trim(XueQi) = Or Trim(KeCheng) = Or Trim(JiaoCai) = Or Trim(RenKLS) = Or Trim(KeShi) = Or Trim(ShangKeDD) = Or Trim(KeChengXZ) = Or Trim(KaoShiXZ) = Then MsgBox 請?zhí)顚懸薷恼n程資料的內(nèi)容! = = Exit Sub End If dsn=信息 select * from 課程表 where 專業(yè) =39。 amp。 amp。 39。, myCon, 3, 2 myRs!年級 = myRs!學(xué)期 = myRs!課程名稱 = myRs!教材 = myRs!任課老師 = myRs!課時 = myRs!上課地點 = myRs!課程性質(zhì) = myRs!考試性質(zhì) = MsgBox 您確定要修改嗎? , vbYesNo, 提示 = = 39。 = = = = = = = = End Sub Private Sub Command2_Click() Unload Me End Sub Private Sub Command3_Click() 畢業(yè)論文 —— 學(xué)生信息管理系統(tǒng) Unload Me 1 End Sub Private Sub DataGrid1_Click() 39。 = select * from 課程表 where 專業(yè) = 39。 amp。 Trim() amp。 39。 39。 = (專業(yè) ) 39。 = (年級 ) 39。 = (學(xué)期 ) 39。 = (課程名稱 ) 39。 = (教材 ) 39。 = (任課老師 ) 39。 = (課時 ) 39。 = (上課地點 ) 39。 = (課程性質(zhì) ) 39。 = (考試性質(zhì) ) End Sub Private Sub DTPicker1_CallbackKeyDown(ByVal KeyCode As Integer, ByVal Shift As Integer, ByVal CallbackField As String, CallbackDate As Date) End Sub Private Sub Form_Activate() = strTiaoJian Set = End Sub Private Sub Form_Load() (必修 ) (選修 ) (自開 ) (考試 ) (查考 ) = = 39。 = = = = = = 畢業(yè)論文 —— 學(xué)生信息管理系統(tǒng) = = End Sub Private Sub Text1_Change() End Sub Private Sub Text2_Change() End Sub Private Sub Text8_Change() End Sub 課程管理:課程查詢(如:界面如圖三) (圖三) 當(dāng)輸入查詢類別、運算符和條件后可以查找到所需要的課程設(shè)置,或按查詢時間來查詢,輸入所要查找的時間段,就可查到所要的課程設(shè)置。 代碼如下: Dim sqlstr As String Private Sub Combo1_Change() End Sub Private Sub Combo2_Change() End Sub Private Sub Combo4_Change() End Sub 畢業(yè)論文 —— 學(xué)生信息管理系統(tǒng) Private Sub Combo5_Change() End Sub Private Sub Combo7_Change() End Sub Private Sub Command1_Click() Dim a As String Dim KCCX1 As String Dim KCCX2 As String Dim str1 As String Dim str2 As String If = True Then a = Trim(Combo2) Select Case a Case = KCCX1 = amp。 amp。 amp。 amp。 39。 amp。 Trim(Text1) amp。 39。 Case like KCCX1 = Instr(1, amp。 amp。 ,39。 amp。 Trim() amp。 39。)0 End Select a = Trim(Combo4) Select Case a Case = KCCX2 = amp。 amp。 amp。 amp。 39。 amp。 Trim(Text2) amp。 39。 Case like KCCX2 = Instr(1, amp。 amp。 ,39。 amp。 Trim() amp。 39。)0 End Select If = True Then If KCCX1 = Then strTiaoJian = select * from 課程表 where amp。 KCCX2 ElseIf KCCX2 = Then strTiaoJian = select * from 課程表 where amp。 KCCX1 Else strTiaoJian = select * from 課程表 where amp。 KCCX1 amp。 and amp。 KCCX2 End If ElseIf = True Then If KCCX1 = Then strTiaoJian = select * from 課程表 where amp。 KCCX2 ElseIf KCCX2 = Then 畢業(yè)論文 —— 學(xué)生信息管理系統(tǒng) strTiaoJian = select * from 課程表 where amp。 KCCX1 Else strTiaoJian = select * from 課程表 where amp。 KCCX1 amp。 or amp。 KCCX2 End If Else If KCCX1 = Then strTiaoJian = select * from 課程表 where amp。 KCCX2 ElseIf KCCX2 = Then strTiaoJian = select * from 課程表 where amp。 KCCX1 Else MsgBox 請選擇連接方式! , vbOKOnly, 警告 Exit Sub End If End If If (KCCX1 amp。 KCCX2) = Then MsgBox 請輸入查詢類別! , vbOKOnly, 警告 Exit Sub Else Unload Me 1 End If End If If = True Then If Val(Combo6) Val(Combo9) Then MsgBox 請正確選擇年份! , vbO