1、加載時,使用子窗體1,學生表全部記錄,鎖定主窗體和子窗體記錄,配置按鈕。
Private Sub Form_Load()
Dim sql As String
Me.子窗體.SourceObject = "子窗體1"
sql = "select * from 學生表"
Me.班級ID.Locked = True
Me.班級名稱.Locked = True
Me.子窗體.Form.RecordSource = sql
Me.子窗體.Form.AllowAdditions = False
Me.子窗體.Form.AllowDeletions = False
Me.子窗體.Form.AllowEdits = False
Me.隱藏列.Visible = False
Me.展開列.Visible = False
Me.隱藏行.Visible = False
Me.展開行.Visible = False
End Sub
2、關閉窗體時,壓縮并修復數據庫。
Private Sub Form_Close()
'壓縮和修復數據庫
CommandBars("Tools").Controls("數據庫實用工具(&D)").Controls("壓縮和修復數據庫(&C)...").accDoDefaultAction
End Sub
3、雙擊班級ID或班級名稱時,解鎖。
Private Sub 班級ID_DblClick(Cancel As Integer)
Me.班級ID.Locked = False
End Sub
Private Sub 班級名稱_DblClick(Cancel As Integer)
Me.班級名稱.Locked = False
End Sub
4、失去焦點時,鎖定班級ID或班級名稱。
Private Sub 班級ID_LostFocus()
Me.班級ID.Locked = True
End Sub
Private Sub 班級名稱_LostFocus()
Me.班級名稱.Locked = True
End Sub
5、單擊時,使用字窗體1或子窗體2。
Private Sub 更換窗體1_Click()
Me.子窗體.SourceObject = "子窗體1"
Me.隱藏列.Visible = True
Me.展開列.Visible = True
Me.隱藏行.Visible = True
Me.展開行.Visible = True
Me.新增.Visible = True
Me.刪除.Visible = True
End Sub
Private Sub 更換窗體2_Click()
Me.子窗體.SourceObject = "子窗體2"
Me.隱藏列.Visible = False
Me.展開列.Visible = False
Me.隱藏行.Visible = False
Me.展開行.Visible = False
Me.新增.Visible = False
Me.刪除.Visible = False
End Sub
6、單擊時,顯示或者隱藏子窗體。
Private Sub 隱藏窗體_Click()
Me.子窗體.Visible = False
End Sub
Private Sub 顯示窗體_Click()
Me.子窗體.Visible = True
End Sub
7、單擊時,顯示或隱藏按鈕。
Private Sub 隱藏按鈕_Click()
Me.隱藏列.Visible = False
Me.展開列.Visible = False
Me.隱藏行.Visible = False
Me.展開行.Visible = False
End Sub
Private Sub 顯示按鈕_Click()
Me.隱藏列.Visible = True
Me.展開列.Visible = True
Me.隱藏行.Visible = True
Me.展開行.Visible = True
End Sub
8、單擊時,自動編號并新增記錄。
Private Sub 新增_Click()
Dim sql As String
DoCmd.SetWarnings no
sql = "Insert INTO 學生表 ( 班級ID, 學生ID ) "
sql = sql + "Select Right(Forms!主窗體!班級ID,1) AS 班級ID, IIf(Max([學生ID]) Is Null,Forms!主窗體!班級ID & '01',Format(Max([學生ID])+1,'000')) AS ID "
sql = sql + "FROM 學生表 Where 學生表.班級ID=Forms!主窗體!班級ID;"
DoCmd.RunSQL sql
Me.子窗體.Requery
End Sub
9、單擊時,刪除指定記錄。
Private Sub 刪除_Click()
DoCmd.SetWarnings no
DoCmd.RunSQL "Delete * FROM 學生表 Where 刪除=Yes;"
Me.子窗體.Requery
End Sub
10、單擊時,鎖定、解鎖、刷新子窗體。
Private Sub 鎖定_Click()
Me.子窗體.Form.AllowAdditions = False
Me.子窗體.Form.AllowDeletions = False
Me.子窗體.Form.AllowEdits = False
End Sub
Private Sub 解鎖_Click()
Me.子窗體.Form.AllowAdditions = True
Me.子窗體.Form.AllowDeletions = True
Me.子窗體.Form.AllowEdits = True
End Sub
Private Sub 刷新_Click()
Me.子窗體.Requery
End Sub
11、單擊時,隱藏或展開列。
Private Sub 隱藏列_Click()
Me.子窗體.Form.家庭住址.ColumnHidden = True
Me.子窗體.Form.聯(lián)系電話.ColumnHidden = True
End Sub
Private Sub 展開列_Click()
Me.子窗體.Form.家庭住址.ColumnHidden = False
Me.子窗體.Form.聯(lián)系電話.ColumnHidden = False
End Sub
12、單擊時,隱藏或展開行。
Private Sub 隱藏行_Click()
Dim sql As String
sql = "select * from 學生表 where isnull(姓名)"
Me.子窗體.Form.RecordSource = sql
Me.子窗體.Requery
End Sub
Private Sub 展開行_Click()
Dim sql As String
sql = "select * from 學生表"
Me.子窗體.Form.RecordSource = sql
Me.子窗體.Requery
End Sub
點擊下載此附件
|