5.4.6 班级信息管理
班级信息管理是对数据库中的“Class”表信息进行维护,与出版社信息管理功能类似。此处不再进行详细地讲解,仅给出界面控件设计和代码。
图5-20 班级信息管理子窗体设计1
图5-21 班级信息管理子窗体设计2
代码5-9 班级信息管理功能代码
′****************************************************************************
Dim addnewflag As Boolean
′窗体加载
Private Sub Form_Load()
lblInfo.Left=Me.ScaleLeft
lblInfo.Top=Me.ScaleTop
lblInfo.Width=Screen.Width
sstabClassInfo.Top=lblInfo.Top+450
sstabClassInfo.Left=70
sstabClassInfo.Width=Screen.Width-200
sstabClassInfo.Height=Screen.Height-2650
DataGrid1.Top=lblInfo.Top+500
DataGrid1.Left=100
DataGrid1.Width=Screen.Width-550
DataGrid1.Height=Screen.Height-3300
DataGrid1.Visible=False
Set DataGrid1.DataSource=rsClassInfo
DataGrid1.ReBind
Frame2.Left=(Screen.Width-Frame2.Width)/2
Call display
End Sub
Private Sub cmdFirst_Click()
On Error Resume Next
rsClassInfo.MoveFirst
Call display
End Sub
Private Sub cmdLast_Click()
On Error Resume Next
rsClassInfo.MoveLast
Call display
End Sub
Private Sub cmdNext_Click()
On Error Resume Next
rsClassInfo.MoveNext
If rsClassInfo.EOF Then
rsClassInfo.MoveLast
MsgBox″最后一条记录″,vbInformation,″最后一条记录″
Else
Call display
End If
End Sub
Private Sub cmdPrevious_Click()
On Error Resume Next
rsClassInfo.MovePrevious
If rsClassInfo.BOF Then
rsClassInfo.MoveFirst
MsgBox″已是第一条记录″,vbInformation,″已是第一条记录″
Else
Call display
End If
End Sub
′“取消”按钮
Private Sub cmdCancel_Click()
cmdAddNew.Enabled=True
cmdDel.Enabled=True
cmdFirst.Enabled=True
cmdLast.Enabled=True
cmdPrevious.Enabled=True
cmdNext.Enabled=True
cmdCancel.Enabled=False
rsClassInfo.CancelUpdate
Call display
End Sub
′添加新记录请注意数据类型匹配问题 班级编号是字符类型
Private Sub cmdAddNew_Click()
On Error Resume Next
Call clear
addnewflag=True
cmdAddNew.Enabled=False
rsClassInfo.MoveFirst
cmdCancel.Enabled=True
cmdDel.Enabled=False
cmdFirst.Enabled=False
cmdLast.Enabled=False
cmdPrevious.Enabled=False
cmdNext.Enabled=False
rsClassInfo.AddNew
txtClassId.SetFocus
End Sub
′删除记录
Private Sub cmdDel_click()
On Error Resume Next
If MsgBox(″确认删除么?″,vbOKCancel+vbExclamation,″删除记录″)=vbOK Then
rsClassInfo.Delete
rsClassInfo.MoveNext
If rsClassInfo.EOF Then
rsClassInfo.MoveLast
MsgBox″最后一条记录″
End If
Call display
End If
End Sub
′保存记录
Private Sub cmdsave_click()
On Error Resume Next
If txtClassId.Text=″″Or txtClassName.Text=″″Then
MsgBox″保存错误!!!数据添加失败!″,vbCritical,″添加全部数据″
txtClassId.SetFocus
Exit Sub
End If
Call assign
rsClassInfo.Save
MsgBox″保存成功″,vbInformation,″已保存成功″
Call clear
cmdDel.Enabled=True
cmdFirst.Enabled=True
cmdLast.Enabled=True
cmdPrevious.Enabled=True
cmdNext.Enabled=True
cmdAddNew.Enabled=True
cmdCancel.Enabled=False
Exit Sub
End Sub
′清除功能函数
Private Sub clear()
txtClassId.Text=″″
txtClassName.Text=″″
End Sub
′Display函数
Private Sub display()
cmdCancel.Enabled=False
txtClassId.Text=rsClassInfo(0)&″″
txtClassName.Text=rsClassInfo(1)&″″
End Sub
′将控件中的数据添加到记录集对应的列
Private Sub assign()
If addnewflag=True Then
rsClassInfo(0)=Trim$(txtClassId.Text)
rsClassInfo(1)=Trim$(txtClassName.Text)
addnewflag=False
End If
End Sub
′注意将选项卡控件的名字修改与本事件匹配
Private Sub sstabClassInfo_Click(PreviousTab As Integer)
If PreviousTab=0Then
DataGrid1.Visible=True
Frame2.Visible=False
Else
DataGrid1.Visible=False
Frame2.Visible=True
End If
End Sub
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。