5.4.5 图书分类信息管理
图书分类信息管理是对数据库中的“Cat”表信息进行维护,与出版社信息管理功能类似。同样我们不进行详细讲解,仅给出界面控件设计和代码。
图5-18 图书分类管理子窗体设计1
图5-19 图书分类管理子窗体设计2
代码5-8 图书分类管理功能代码
′****************************************************************************
Dim addnewflag As Boolean
′窗体加载
Private Sub Form_Load()
lblInfo.Left=Me.ScaleLeft
lblInfo.Top=Me.ScaleTop
lblInfo.Width=Screen.Width
sstabCatInfo.Top=lblInfo.Top+450
sstabCatInfo.Left=70
sstabCatInfo.Width=Screen.Width-200
sstabCatInfo.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=rsCatInfo
DataGrid1.ReBind
Frame2.Left=(Screen.Width-Frame2.Width)/2
Call display
End Sub
Private Sub cmdFirst_Click()
On Error Resume Next
rsCatInfo.MoveFirst
Call display
End Sub
Private Sub cmdLast_Click()
On Error Resume Next
rsCatInfo.MoveLast
Call display
End Sub
Private Sub cmdNext_Click()
On Error Resume Next
rsCatInfo.MoveNext
If rsCatInfo.EOF Then
rsCatInfo.MoveLast
MsgBox″最后一条记录″,vbInformation,″最后一条记录″
Else
Call display
End If
End Sub
Private Sub cmdPrevious_Click()
On Error Resume Next
rsCatInfo.MovePrevious
If rsCatInfo.BOF Then
rsCatInfo.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
rsCatInfo.CancelUpdate
Call display
End Sub
′添加新记录
Private Sub cmdAddNew_Click()
On Error Resume Next
Call clear
Dim i As Integer
Dim max As Integer
max=0
addnewflag=True
cmdAddNew.Enabled=False
For i=0To rsCatInfo.RecordCount
If max<rsCatInfo(0)Then
max=rsCatInfo(0)
End If
rsCatInfo.MoveNext
Next i
rsCatInfo.MoveFirst
cmdCancel.Enabled=True
cmdDel.Enabled=False
cmdFirst.Enabled=False
cmdLast.Enabled=False
cmdPrevious.Enabled=False
cmdNext.Enabled=False
rsCatInfo.AddNew
txtCatId.Text=max+1
txtCatName.SetFocus
End Sub
′删除记录
Private Sub cmdDel_click()
On Error Resume Next
If MsgBox(″确认删除么?″,vbOKCancel+vbExclamation,″删除记录″)=vbOK Then
rsCatInfo.Delete
rsCatInfo.MoveNext
If rsCatInfo.EOF Then
rsCatInfo.MoveLast
MsgBox″最后一条记录″
End If
Call display
End If
End Sub
′保存记录
Private Sub cmdsave_click()
On Error Resume Next
If txtCatId.Text=″″Or txtCatName.Text=″″Then
MsgBox″保存错误!!!数据添加失败!″,vbCritical,″添加全部数据″
txtCatId.SetFocus
Exit Sub
End If
Call assign
rsCatInfo.Save
MsgBox″保存成功″,vbInformation,″已保存成功″
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()
txtCatId.Text=″″
txtCatName.Text=″″
End Sub
′Display函数
Private Sub display()
cmdCancel.Enabled=False
txtCatId.Text=Str(rsCatInfo(0))&″″
txtCatName.Text=rsCatInfo(1)&″″
End Sub
′将控件中的数据添加到记录集对应的列
Private Sub assign()
If addnewflag=True Then
rsCatInfo(0)=Val(Trim$(txtCatId.Text))
rsCatInfo(1)=Trim$(txtCatName.Text)
addnewflag=False
Else
rsCatInfo(0)=Val(Trim$(txtCatId.Text))
rsCatInfo(1)=Trim$(txtCatName.Text)
End If
End Sub
Private Sub sstabCatInfo_Click(PreviousTab As Integer)
If PreviousTab=0Then
DataGrid1.Visible=True
Else
DataGrid1.Visible=False
End If
End Sub
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。