VB案例:学生成绩管理系统
2018-02-28 18:34
549 查看
VB案例:学生成绩管理系统
该系统针对成绩管理的实际情况,使用简单,功能实用,设置灵活。
利用该系统你能进行成绩表管理,包括建表、浏览、追加、修改、删除、查询、排序、统计分析等等功能,减少教师的重复劳动,提高工作效率。 该系统的版本V1.0,能够处理每学期科目不同的情况,可以随意设置科目名称,科目数最多可达15个,当然可以小于15个科目。
当您登录进入该系统,有两种不同的权限级别:管理员和浏览者。系统管理员的用户名是系统规定好的,为system,其权限包括系统维护、成绩表浏览、编辑、删除。而浏览者不能进行系统维护,也不能编辑和删除成绩表。
一、运行效果
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/4bb45d3241273c7bc8aeb49915a0b74f)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/f96324afe2617d815f7716f6afe56ad2)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/ac4b70b3ad0c4d5979fb8bec239d9d3b)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/4cecee03c3186a20d9a79c2ab5de4346)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/ce0962bcff66b51ee0809d3eb7b0b38d)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/dfffd70afe10a12369f84121703c4718)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/5a1dde11d33ba099dfcb016d0c639769)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/85e5e9c6530f95b55f82da542622e518)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/5bf60ad7c451a1ce0ded2eb8432674c5)
二、工程结构
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/ba8225d7fd956a7330016ab660b5178b)
三、工程目录结构
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/516061b33c9b7c59c9952e54042a8c78)
四、实现步骤(一)登录窗体frmLogin
1、界面设计
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/6a53dc7f6fc79dff94755caeb980d08f)
2、事件代码Dim Password As String, pp As String
Private Sub cmdExit_Click()
Unload Me
End
End Sub
Private Sub cmdLogin_Click()
Static i As Integer
If Txtpassword.Text = Password Then
Unload Me
Else
Me.Hide
i = i + 1
If i = 3 Then
MsgBox "您无权使用,请退出系统!", vbInformation, "登录失败!"
Unload Me
End
Else
MsgBox "密码错误,请重试!", vbInformation, "登录失败!"
Me.Show
Txtpassword.SetFocus
Txtpassword.SelStart = 0
Txtpassword.SelLength = Len(Txtpassword.Text)
End If
End If
End Sub
Private Sub Form_Activate()
Txtpassword.SetFocus
End Sub
Private Sub Form_Load()
pp = GetSetting(App.Title, "Login", "PWD", "")
Password = ""
For i = 1 To Len(pp)
Password = Password + Chr$(Asc(Mid$(pp, i)) - i)
Next i
End Sub
Private Sub Txtpassword_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
cmdLogin_Click
End If
End Sub3、运行效果
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/cda4468ac93484a0d0997e4844c73c77)
(二)主窗体MDIMain
1、界面设计
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/fe05e75853e65b212d95fed5df3be382)
2、事件代码Private Sub MDIForm_Load()
ChDrive App.Path
ChDir App.Path
StatusBar1.Panels(2).Text = Format(Now, "yyyy年mm月dd日") & " " & WeekdayName(Weekday(Now))
End Sub
Private Sub MDIForm_Unload(Cancel As Integer)
If MsgBox("您要退出【学生成绩管理系统】吗?", vbYesNo + vbQuestion) = vbYes Then
End
Else
Cancel = True
End If
End Sub
Private Sub mnuAbout_Click()
frmAbout.Show
End Sub
Private Sub mnuAppend_Click()
frmAppend.Show
End Sub
Private Sub mnuBackup_Click()
frmBackup.Show
End Sub
Private Sub mnuBrowse_Click()
frmBrowse.Show
End Sub
Private Sub mnuClose_Click()
On Error Resume Next
mnuOpen.Enabled = True
mnuClose.Enabled = False
db.Close
mnuManipulate.Enabled = False
mnuManage.Enabled = True
MDIMain.StatusBar1.Panels(2).Text = ""
Unload MDIMain.ActiveForm
Toolbar1.Buttons("open").Enabled = True
Toolbar1.Buttons("close").Enabled = False
Toolbar1.Buttons("browse").Enabled = False
Toolbar1.Buttons("append").Enabled = False
Toolbar1.Buttons("edit").Enabled = False
Toolbar1.Buttons("delete").Enabled = False
Toolbar1.Buttons("find").Enabled = False
Toolbar1.Buttons("sort").Enabled = False
Toolbar1.Buttons("statistic").Enabled = False
StatusBar1.Panels(2).Text = Format(Now, "yyyy年mm月dd日") & " " & WeekdayName(Weekday(Now))
End Sub
Private Sub mnuContact_Click()
ShellExecute hWnd, "open", "mailto:maths007@163.com", 0, 0, 0
End Sub
Private Sub mnuContent_Click()
If Dir("c:\windows\hh.exe") <> "" Then
Shell "c:\windows\hh.exe " & App.Path & "\data\score.chm", vbNormalFocus
ElseIf Dir("c:\winnt\hh.exe") <> "" Then
Shell "c:\winnt\hh.exe " & App.Path & "\data\score.chm", vbNormalFocus
End If
End Sub
Private Sub mnuDelete_Click()
frmDelete.Show
End Sub
Private Sub mnuEdit_Click()
frmEdit.Show
End Sub
Private Sub mnuExit_Click()
Unload Me
End Sub
Private Sub mnuManage_Click()
frmManage.Show
End Sub
Private Sub mnuNew_Click()
frmNew.Show
End Sub
Private Sub mnuOpen_Click()
frmOpen.Show
End Sub
Private Sub mnuPassword_Click()
frmSetPWD.Show
End Sub
Private Sub mnuFind_Click()
frmFind.Show
End Sub
Private Sub mnuRestore_Click()
frmRestore.Show
End Sub
Private Sub mnuSort_Click()
frmSort.Show
End Sub
Private Sub mnuStatistic_Click()
frmStatistic.Show
End Sub
Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
Select Case Button.Key
Case "new"
mnuNew_Click
Case "open"
mnuOpen_Click
Case "close"
mnuClose_Click
Case "browse"
mnuBrowse_Click
Case "append"
mnuAppend_Click
Case "edit"
mnuEdit_Click
Case "delete"
mnuDelete_Click
Case "find"
mnuFind_Click
Case "sort"
mnuSort_Click
Case "statistic"
mnuStatistic_Click
Case "help"
mnuContent_Click
End Select
End Sub3、运行结果
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/2d3f776a090e36777d1dba7d0aa80139)
(三)关于窗体frmAbout
1、界面设计
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/29/dadfaf850faed95e1fe419d57959e4f9)
2、事件代码Option Explicit
Private Sub Form_Load()
Me.Left = (MDIMain.ScaleWidth - Me.Width) / 2
Me.Top = (MDIMain.ScaleHeight - Me.Height) / 2
End Sub
Private Sub Timer1_Timer()
Unload Me
End Sub
该系统针对成绩管理的实际情况,使用简单,功能实用,设置灵活。
利用该系统你能进行成绩表管理,包括建表、浏览、追加、修改、删除、查询、排序、统计分析等等功能,减少教师的重复劳动,提高工作效率。 该系统的版本V1.0,能够处理每学期科目不同的情况,可以随意设置科目名称,科目数最多可达15个,当然可以小于15个科目。
当您登录进入该系统,有两种不同的权限级别:管理员和浏览者。系统管理员的用户名是系统规定好的,为system,其权限包括系统维护、成绩表浏览、编辑、删除。而浏览者不能进行系统维护,也不能编辑和删除成绩表。
一、运行效果
二、工程结构
三、工程目录结构
四、实现步骤(一)登录窗体frmLogin
1、界面设计
2、事件代码Dim Password As String, pp As String
Private Sub cmdExit_Click()
Unload Me
End
End Sub
Private Sub cmdLogin_Click()
Static i As Integer
If Txtpassword.Text = Password Then
Unload Me
Else
Me.Hide
i = i + 1
If i = 3 Then
MsgBox "您无权使用,请退出系统!", vbInformation, "登录失败!"
Unload Me
End
Else
MsgBox "密码错误,请重试!", vbInformation, "登录失败!"
Me.Show
Txtpassword.SetFocus
Txtpassword.SelStart = 0
Txtpassword.SelLength = Len(Txtpassword.Text)
End If
End If
End Sub
Private Sub Form_Activate()
Txtpassword.SetFocus
End Sub
Private Sub Form_Load()
pp = GetSetting(App.Title, "Login", "PWD", "")
Password = ""
For i = 1 To Len(pp)
Password = Password + Chr$(Asc(Mid$(pp, i)) - i)
Next i
End Sub
Private Sub Txtpassword_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
cmdLogin_Click
End If
End Sub3、运行效果
(二)主窗体MDIMain
1、界面设计
2、事件代码Private Sub MDIForm_Load()
ChDrive App.Path
ChDir App.Path
StatusBar1.Panels(2).Text = Format(Now, "yyyy年mm月dd日") & " " & WeekdayName(Weekday(Now))
End Sub
Private Sub MDIForm_Unload(Cancel As Integer)
If MsgBox("您要退出【学生成绩管理系统】吗?", vbYesNo + vbQuestion) = vbYes Then
End
Else
Cancel = True
End If
End Sub
Private Sub mnuAbout_Click()
frmAbout.Show
End Sub
Private Sub mnuAppend_Click()
frmAppend.Show
End Sub
Private Sub mnuBackup_Click()
frmBackup.Show
End Sub
Private Sub mnuBrowse_Click()
frmBrowse.Show
End Sub
Private Sub mnuClose_Click()
On Error Resume Next
mnuOpen.Enabled = True
mnuClose.Enabled = False
db.Close
mnuManipulate.Enabled = False
mnuManage.Enabled = True
MDIMain.StatusBar1.Panels(2).Text = ""
Unload MDIMain.ActiveForm
Toolbar1.Buttons("open").Enabled = True
Toolbar1.Buttons("close").Enabled = False
Toolbar1.Buttons("browse").Enabled = False
Toolbar1.Buttons("append").Enabled = False
Toolbar1.Buttons("edit").Enabled = False
Toolbar1.Buttons("delete").Enabled = False
Toolbar1.Buttons("find").Enabled = False
Toolbar1.Buttons("sort").Enabled = False
Toolbar1.Buttons("statistic").Enabled = False
StatusBar1.Panels(2).Text = Format(Now, "yyyy年mm月dd日") & " " & WeekdayName(Weekday(Now))
End Sub
Private Sub mnuContact_Click()
ShellExecute hWnd, "open", "mailto:maths007@163.com", 0, 0, 0
End Sub
Private Sub mnuContent_Click()
If Dir("c:\windows\hh.exe") <> "" Then
Shell "c:\windows\hh.exe " & App.Path & "\data\score.chm", vbNormalFocus
ElseIf Dir("c:\winnt\hh.exe") <> "" Then
Shell "c:\winnt\hh.exe " & App.Path & "\data\score.chm", vbNormalFocus
End If
End Sub
Private Sub mnuDelete_Click()
frmDelete.Show
End Sub
Private Sub mnuEdit_Click()
frmEdit.Show
End Sub
Private Sub mnuExit_Click()
Unload Me
End Sub
Private Sub mnuManage_Click()
frmManage.Show
End Sub
Private Sub mnuNew_Click()
frmNew.Show
End Sub
Private Sub mnuOpen_Click()
frmOpen.Show
End Sub
Private Sub mnuPassword_Click()
frmSetPWD.Show
End Sub
Private Sub mnuFind_Click()
frmFind.Show
End Sub
Private Sub mnuRestore_Click()
frmRestore.Show
End Sub
Private Sub mnuSort_Click()
frmSort.Show
End Sub
Private Sub mnuStatistic_Click()
frmStatistic.Show
End Sub
Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
Select Case Button.Key
Case "new"
mnuNew_Click
Case "open"
mnuOpen_Click
Case "close"
mnuClose_Click
Case "browse"
mnuBrowse_Click
Case "append"
mnuAppend_Click
Case "edit"
mnuEdit_Click
Case "delete"
mnuDelete_Click
Case "find"
mnuFind_Click
Case "sort"
mnuSort_Click
Case "statistic"
mnuStatistic_Click
Case "help"
mnuContent_Click
End Select
End Sub3、运行结果
(三)关于窗体frmAbout
1、界面设计
2、事件代码Option Explicit
Private Sub Form_Load()
Me.Left = (MDIMain.ScaleWidth - Me.Width) / 2
Me.Top = (MDIMain.ScaleHeight - Me.Height) / 2
End Sub
Private Sub Timer1_Timer()
Unload Me
End Sub
相关文章推荐
- [VB.NET源码]学生成绩管理系统
- 课程设计之学生成绩管理系统开发
- 软件课设,学生信息与成绩管理系统
- 学生成绩管理系统
- 班级学生成绩管理系统C++
- 一个很烂的学生成绩管理系统
- java开发的简易学生成绩管理系统
- C语言学生成绩管理系统
- Laravel5学生成绩管理系统-05-分页
- C语言学生成绩管理系统源代码
- C# Winform月考学生成绩管理系统
- C语言实现学生成绩管理系统
- Django+Karlooper+iOS重构学校的学生成绩管理系统(一)系统重构
- C语言实现---学生成绩管理系统
- C语言利用结构体数组实现学生成绩管理系统
- [置顶] C语言项目--教师信息/学生成绩管理系统
- 面向对象:学生成绩管理系统
- 学生成绩管理系统
- 汇编语言学生成绩管理系统(一)结构体的使用
- 《C语言编写 学生成绩管理系统》