formpunish.frm

来自「vb数据库编程资料」· FRM 代码 · 共 521 行 · 第 1/2 页

FRM
521
字号
         Alignment       =   1  'Right Justify
         Caption         =   "出生日期"
         Height          =   180
         Left            =   120
         TabIndex        =   18
         Top             =   1440
         Width           =   840
      End
      Begin VB.Label Label3 
         Alignment       =   1  'Right Justify
         Caption         =   "性别"
         Height          =   180
         Left            =   120
         TabIndex        =   17
         Top             =   1080
         Width           =   840
      End
      Begin VB.Label Label2 
         Alignment       =   1  'Right Justify
         Caption         =   "姓名"
         Height          =   180
         Left            =   120
         TabIndex        =   16
         Top             =   720
         Width           =   840
      End
      Begin VB.Label Label1 
         Alignment       =   1  'Right Justify
         Caption         =   "学号"
         Height          =   180
         Left            =   120
         TabIndex        =   15
         Top             =   360
         Width           =   840
      End
   End
   Begin VB.Data dataPunish 
      Caption         =   "处罚记录"
      Connect         =   "Access"
      DatabaseName    =   "E:\Book Edit\VisualBasic数据库编程教程\ch12\Student.mdb"
      DefaultCursorType=   0  '缺省游标
      DefaultType     =   2  '使用 ODBC
      Exclusive       =   0   'False
      Height          =   375
      Left            =   120
      Options         =   0
      ReadOnly        =   0   'False
      RecordsetType   =   0  'Table
      RecordSource    =   "Punish"
      Top             =   2640
      Width           =   2055
   End
   Begin VB.CommandButton cmdCancel 
      Caption         =   "放弃"
      Height          =   375
      Left            =   6120
      TabIndex        =   8
      Top             =   2640
      Width           =   900
   End
   Begin VB.CommandButton cmdSave 
      Caption         =   "保存"
      Height          =   375
      Left            =   5160
      TabIndex        =   7
      Top             =   2640
      Width           =   900
   End
   Begin VB.CommandButton cmdModify 
      Caption         =   "修改"
      Height          =   375
      Left            =   4200
      TabIndex        =   6
      Top             =   2640
      Width           =   900
   End
   Begin VB.CommandButton cmdDelete 
      Caption         =   "删除"
      Height          =   375
      Left            =   3240
      TabIndex        =   5
      Top             =   2640
      Width           =   900
   End
   Begin VB.CommandButton cmdQuit 
      Caption         =   "退出"
      Height          =   375
      Left            =   7080
      TabIndex        =   9
      Top             =   2640
      Width           =   900
   End
   Begin VB.CommandButton cmdAdd 
      Caption         =   "添加"
      Height          =   375
      Left            =   2280
      TabIndex        =   4
      Top             =   2640
      Width           =   900
   End
   Begin MSDBGrid.DBGrid dbgPunish 
      Bindings        =   "FormPunish.frx":00F9
      Height          =   2415
      Left            =   120
      OleObjectBlob   =   "FormPunish.frx":0112
      TabIndex        =   10
      Top             =   120
      Width           =   7815
   End
   Begin VB.Label Label7 
      Alignment       =   1  'Right Justify
      Caption         =   "说明"
      Height          =   255
      Left            =   3480
      TabIndex        =   14
      Top             =   4200
      Width           =   615
   End
   Begin VB.Label Label6 
      Alignment       =   1  'Right Justify
      Caption         =   "日期"
      Height          =   255
      Left            =   3480
      TabIndex        =   13
      Top             =   3720
      Width           =   615
   End
   Begin VB.Label Label5 
      Alignment       =   1  'Right Justify
      Caption         =   "学号"
      Height          =   255
      Left            =   3480
      TabIndex        =   12
      Top             =   3240
      Width           =   615
   End
End
Attribute VB_Name = "frmPunish"
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 dataPunish.Recordset.RecordCount > 0 Then
    BookMK = dataPunish.Recordset.Bookmark
  Else
    BookMK = Null
  End If
  
  dataPunish.Recordset.AddNew
  InEditMode = True
  ToggleEditMode
  dtpDate.Value = Date
End Sub

Private Sub cmdCancel_Click()
  dataPunish.UpdateControls
  InEditMode = False
  ToggleEditMode
  
  If Len(BookMK) > 0 Then
    dataPunish.Recordset.Bookmark = BookMK
  ElseIf dataPunish.Recordset.RecordCount > 0 Then
    dataPunish.Recordset.MoveFirst
  End If
End Sub

Private Sub cmdDelete_Click()
  Dim Msg$
  
  If dataPunish.Recordset.EOF Then Exit Sub
 
  Msg = MsgBox("确定要删除记录吗?", vbYesNo)
  If Msg = vbYes Then
    dataPunish.Recordset.Delete
    dataPunish.Recordset.MoveNext
    If dataPunish.Recordset.EOF And (dataPunish.Recordset.RecordCount > 0) Then
      dataPunish.Recordset.MoveLast
    End If
  End If
End Sub

Private Sub cmdModify_Click()
  If dataPunish.Recordset.EOF Then Exit Sub
  
  BookMK = dataPunish.Recordset.Bookmark
  dataPunish.Recordset.Edit
  InEditMode = True
  ToggleEditMode
End Sub

Private Sub cmdQuit_Click()
  Unload Me
End Sub

Private Sub cmdSave_Click()
  If dataStudent.Recordset.EOF Then
    MsgBox "查无此人,无法保存!"
    Exit Sub
  End If
  
  dataPunish.UpdateRecord
  InEditMode = False
  ToggleEditMode
  
  If Len(BookMK) > 0 Then
    dataPunish.Recordset.Bookmark = BookMK
  ElseIf dataPunish.Recordset.RecordCount > 0 Then
    dataPunish.Recordset.MoveFirst
  End If
End Sub

Private Sub Form_Load()
  dataPunish.DatabaseName = App.Path & "\Student.mdb"
  dataStudent.DatabaseName = App.Path & "\Student.mdb"
  dataStudent.Visible = False
  
  dataStudent = False
  ToggleEditMode
End Sub

Private Sub ToggleEditMode()
  txtStudent.Locked = Not InEditMode
  dtpDate.Enabled = InEditMode
  txtDesc.Locked = Not InEditMode
  lstPunish.Enabled = InEditMode
  
  cmdAdd.Enabled = Not InEditMode
  cmdDelete.Enabled = Not InEditMode
  cmdQuit.Enabled = Not InEditMode
  cmdModify.Enabled = Not InEditMode
  dbgPunish.Enabled = Not InEditMode
  
  dataPunish.Enabled = Not InEditMode
  
  cmdSave.Enabled = InEditMode
  cmdCancel.Enabled = InEditMode
End Sub

Private Sub Form_Unload(Cancel As Integer)
  If InEditMode Then
    dataReward.UpdateControls
    InEditMode = False
    ToggleEditMode
  End If
End Sub

Private Sub txtStudent_Change()
  strSQL = "SELECT Student.*, ClassName, DepartName, Master FROM Student, Class, Department "
  strSQL = strSQL & " WHERE Student.ClassID = Class.ClassID"
  strSQL = strSQL & " AND Class.DepartID = Department.DepartID"
  strSQL = strSQL & " AND StudentID='" & txtStudent.Text & "'"
  
  dataStudent.RecordSource = strSQL
  dataStudent.Refresh
End Sub

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?