formclass.frm
来自「vb数据库编程资料」· FRM 代码 · 共 425 行
FRM
425 行
VERSION 5.00
Object = "{00028C01-0000-0000-0000-000000000046}#1.0#0"; "DBGRID32.OCX"
Object = "{86CF1D34-0C5F-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCT2.OCX"
Begin VB.Form frmClass
BorderStyle = 1 'Fixed Single
Caption = "班级管理"
ClientHeight = 7185
ClientLeft = 45
ClientTop = 330
ClientWidth = 8145
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 7185
ScaleWidth = 8145
StartUpPosition = 2 '屏幕中心
Begin VB.TextBox txtMasterTel
DataField = "MasterTel"
DataSource = "dataClass"
Height = 270
Left = 2400
MaxLength = 13
TabIndex = 5
Top = 1920
Width = 2895
End
Begin MSComCtl2.DTPicker dtpBeginDate
DataField = "BeginDate"
DataSource = "dataClass"
Height = 255
Left = 2400
TabIndex = 3
Top = 1200
Width = 2895
_ExtentX = 5106
_ExtentY = 450
_Version = 393216
Format = 23724033
CurrentDate = 38011
End
Begin VB.ComboBox cmbDepart
DataField = "DepartID"
DataSource = "dataClass"
Height = 300
ItemData = "FormClass.frx":0000
Left = 2400
List = "FormClass.frx":0002
TabIndex = 0
Top = 120
Width = 2895
End
Begin VB.TextBox txtClassID
DataField = "ClassID"
DataSource = "dataClass"
Height = 270
Left = 2400
MaxLength = 6
TabIndex = 1
Top = 480
Width = 2895
End
Begin VB.TextBox txtClassName
DataField = "ClassName"
DataSource = "dataClass"
Height = 270
Left = 2400
MaxLength = 20
TabIndex = 2
Top = 840
Width = 2895
End
Begin VB.TextBox txtMaster
DataField = "Master"
DataSource = "dataClass"
Height = 270
Left = 2400
MaxLength = 8
TabIndex = 4
Top = 1560
Width = 2895
End
Begin VB.Data dataValid
Caption = "验证"
Connect = "Access"
DatabaseName = "E:\Book Edit\VisualBasic数据库编程教程\ch12\Student.mdb"
DefaultCursorType= 0 '缺省游标
DefaultType = 2 '使用 ODBC
Exclusive = 0 'False
Height = 405
Left = 5520
Options = 0
ReadOnly = 0 'False
RecordsetType = 1 'Dynaset
RecordSource = "Student"
Top = 2040
Visible = 0 'False
Width = 2535
End
Begin VB.CommandButton cmdDelete
Caption = "删除(&D)"
Height = 375
Left = 5520
TabIndex = 8
Top = 600
Width = 1215
End
Begin VB.Data dataClass
Caption = "班级管理"
Connect = "Access"
DatabaseName = "E:\Book Edit\VisualBasic数据库编程教程\ch12\Student.mdb"
DefaultCursorType= 0 '缺省游标
DefaultType = 2 '使用 ODBC
Exclusive = 0 'False
Height = 435
Left = 5520
Options = 0
ReadOnly = 0 'False
RecordsetType = 0 'Table
RecordSource = "Class"
Top = 1560
Width = 2535
End
Begin VB.TextBox txtDesc
DataField = "Description"
DataSource = "dataClass"
Height = 1695
Left = 120
MultiLine = -1 'True
TabIndex = 6
Top = 2400
Width = 7935
End
Begin VB.CommandButton cmdAdd
Caption = "添加(&A)"
Height = 375
Left = 5520
TabIndex = 7
Top = 120
Width = 1215
End
Begin VB.CommandButton cmdQuit
Caption = "退出(&Q)"
Height = 375
Left = 5520
TabIndex = 9
Top = 1080
Width = 1215
End
Begin VB.CommandButton cmdSave
Caption = "保存(&S)"
Height = 375
Left = 6840
TabIndex = 11
Top = 600
Width = 1215
End
Begin VB.CommandButton cmdModify
Caption = "修改(&M)"
Height = 375
Left = 6840
TabIndex = 10
Top = 120
Width = 1215
End
Begin VB.CommandButton cmdCancel
Cancel = -1 'True
Caption = "放弃(&C)"
Height = 375
Left = 6840
TabIndex = 12
Top = 1080
Width = 1215
End
Begin MSDBGrid.DBGrid dbgClass
Bindings = "FormClass.frx":0004
Height = 2895
Left = 120
OleObjectBlob = "FormClass.frx":001C
TabIndex = 13
Top = 4200
Width = 7935
End
Begin VB.Label Label7
Alignment = 1 'Right Justify
Caption = "班主任电话"
Height = 255
Left = 1320
TabIndex = 20
Top = 1920
Width = 975
End
Begin VB.Label Label6
Alignment = 1 'Right Justify
Caption = "入学时间"
Height = 255
Left = 1320
TabIndex = 19
Top = 1200
Width = 975
End
Begin VB.Label Label1
Alignment = 1 'Right Justify
Caption = "班级编号"
Height = 255
Left = 1320
TabIndex = 18
Top = 480
Width = 975
End
Begin VB.Label Label2
Alignment = 1 'Right Justify
Caption = "班级名称"
Height = 255
Left = 1320
TabIndex = 17
Top = 840
Width = 975
End
Begin VB.Label Label3
Alignment = 1 'Right Justify
Caption = "班主任姓名"
Height = 255
Left = 1320
TabIndex = 16
Top = 1560
Width = 975
End
Begin VB.Label Label4
Alignment = 1 'Right Justify
Caption = "所属院系"
Height = 255
Left = 1320
TabIndex = 15
Top = 195
Width = 975
End
Begin VB.Label Label5
Caption = "说明"
Height = 255
Left = 120
TabIndex = 14
Top = 2040
Width = 615
End
End
Attribute VB_Name = "frmClass"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim BookMK
Dim InEditMode As Boolean
Private Sub cmdAdd_Click()
If dataClass.Recordset.RecordCount > 0 Then
BookMK = dataClass.Recordset.Bookmark
Else
BookMK = Null
End If
dataClass.Recordset.AddNew
InEditMode = True
ToggleEditMode
dtpBeginDate.Value = Date
End Sub
Private Sub cmdCancel_Click()
dataClass.UpdateControls
InEditMode = False
ToggleEditMode
If Len(BookMK) > 0 Then
dataClass.Recordset.Bookmark = BookMK
ElseIf dataClass.Recordset.RecordCount > 0 Then
dataClass.Recordset.MoveFirst
End If
End Sub
Private Sub cmdDelete_Click()
Dim Msg$
If dataClass.Recordset.EOF Then Exit Sub
dataValid.RecordSource = "SELECT * FROM Student WHERE ClassID='" & dataClass.Recordset("ClassID") & "'"
dataValid.Refresh
If Not dataValid.Recordset.EOF Then
Msg = "学生["
While Not dataValid.Recordset.EOF
Msg = Msg & dataValid.Recordset("Name") & ","
dataValid.Recordset.MoveNext
Wend
Msg = Msg & "] 属于该班级,所以不能删除该班级!"
MsgBox Msg
Exit Sub
End If
Msg = MsgBox("确定要删除记录吗?", vbYesNo)
If Msg = vbYes Then
dataClass.Recordset.Delete
dataClass.Recordset.MoveNext
If dataClass.Recordset.EOF And (dataClass.Recordset.RecordCount > 0) Then
dataClass.Recordset.MoveLast
End If
End If
End Sub
Private Sub cmdModify_Click()
If dataClass.Recordset.EOF Then Exit Sub
BookMK = dataClass.Recordset.Bookmark
dataClass.Recordset.Edit
InEditMode = True
ToggleEditMode
txtClassID.Locked = True
End Sub
Private Sub cmdQuit_Click()
Unload Me
End Sub
Private Sub cmdSave_Click()
txtClassID.Text = Replace(Trim(txtClassID.Text), "'", "")
txtClassName.Text = Replace(Trim(txtClassName.Text), "'", "")
txtMaster.Text = Replace(Trim(txtMaster.Text), "'", "")
txtMasterTel.Text = Replace(Trim(txtMasterTel.Text), "'", "")
txtDesc.Text = Replace(Trim(txtDesc.Text), "'", "")
If cmbDepart.ListIndex < 0 Then
MsgBox "所属院系编号输入不正确", , "输入错误"
cmbDepart.SetFocus
Exit Sub
ElseIf dtpBeginDate.Value = "" Then
MsgBox "请选择一个入学日期!", , "输入错误"
dtpBeginDate.SetFocus
Exit Sub
ElseIf txtClassID.Text = "" Then
MsgBox "班级编号不能为空!", , "输入错误"
txtClassID.SetFocus
Exit Sub
ElseIf txtClassName.Text = "" Then
MsgBox "班级名称不能为空!", , "输入错误"
txtClassName.SetFocus
Exit Sub
End If
If Not txtClassID.Locked Then
dataValid.RecordSource = "SELECT * FROM Class WHERE ClassID='" & strClassID & "'"
dataValid.Refresh
If Not dataValid.Recordset.EOF Then
Msg = "班级编号[" & strDepartID & "]已经存在,不能重复。"
MsgBox Msg
txtClassID.SetFocus
Exit Sub
End If
End If
dataClass.UpdateRecord
InEditMode = False
ToggleEditMode
If Len(BookMK) > 0 Then
dataClass.Recordset.Bookmark = BookMK
ElseIf dataClass.Recordset.RecordCount > 0 Then
dataClass.Recordset.MoveFirst
End If
End Sub
Private Sub Form_Load()
dataClass.DatabaseName = App.Path & "\Student.mdb"
dataValid.DatabaseName = App.Path & "\Student.mdb"
dataValid.Visible = False
FullDepart
InEditMode = False
ToggleEditMode
If cmbDepart.ListCount < 1 Then
MsgBox "目前院系库为空,请先进行院系设置,然后再进行班级管理!"
cmdAdd.Enabled = False
End If
End Sub
Private Sub ToggleEditMode()
txtClassID.Locked = Not InEditMode
txtClassName.Locked = Not InEditMode
txtMaster.Locked = Not InEditMode
txtMasterTel.Locked = Not InEditMode
txtDesc.Locked = Not InEditMode
cmbDepart.Enabled = InEditMode
dtpBeginDate.Enabled = InEditMode
cmdAdd.Enabled = Not InEditMode
cmdDelete.Enabled = Not InEditMode
cmdQuit.Enabled = Not InEditMode
cmdModify.Enabled = Not InEditMode
dbgClass.Enabled = Not InEditMode
dataClass.Enabled = Not InEditMode
cmdSave.Enabled = InEditMode
cmdCancel.Enabled = InEditMode
End Sub
Private Sub FullDepart()
dataValid.RecordSource = "SELECT * FROM Department"
dataValid.Refresh
cmbDepart.Clear
While Not dataValid.Recordset.EOF
cmbDepart.AddItem dataValid.Recordset("DepartID")
dataValid.Recordset.MoveNext
Wend
End Sub
Private Sub Form_Unload(Cancel As Integer)
If InEditMode Then
dataClass.UpdateControls
InEditMode = False
ToggleEditMode
End If
End Sub
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?