TRONG LẬP TRÌNH 1. REQUERY:
Thường thường, khi viết chương trình thường có nhiều Form, tùy ý theo người viết chương trình, thông thường, khi người sử dụng nhập dữ liệu thì dữ liệu phải được cập nhật lại trên các Form khác. Để thực hiện được công việc này, tại thuộc tính OnClose của Form hiện hành ta thực hiện đoạn code sau:
Private Sub FormClose()
Forms!FormName.Requery End Sub
Đoạn thủ tục này được gọi là “làm tươi” một Form, Ta cũng có thể “làm tươi” lại một ComboBox, hay một ListBox theo cú pháp:
Forms!FormName!ControlName.Requery
Ví dụ: Sau khi cập nhật vào Control Maso, thì danh sách trong ComboBox Danhsach chỉ hiển thị những nội dung phù hợp với Control Maso:
Private Sub MasoAfterUpdate() Me!Danhsach.Requery End Sub
Trong khi viết chương trình, có thể có một nút lệnh trên một Form có thể mở một Form khác. Đoạn mã lệnh tại nút lệnh dùng mở một Form khác thực hiện như sau:
On Error GoTo Err_Cmdopen Dim stDocName As String Dim stLinkCriteria As String
stDocName = “FormsName” stLinkCriteria= “Criteria”
DoCmd.OpenForm stDocName, , , stLinkCriteria Exit_Cmdopen:
Exit Function Err_Cmdopen:
MsgBox Err.Description Resume Exit_cmdopen
Trong đoạn thủ tục trên, khi được gọi thi hành, nó sẽ mở một Forms không có điều kiện, nếu Forms mở với một điều kiện thì sẽ gán điều kiện vào biến stLinkCriteria.
Dim VBString As Variant
VBString = MsgBox (“Thoát chương trình”,0 + 32 + 4,“Thông báo”) If VBString <> 6 Then
Exit Sub Else
DoCmd.Quit End If
Đoạn mã lệnh trên không đặt bẩy lỗi vì đây là đoạn mã lệnh đặt tại CommandButton trên Forms chính của chương trình, chỉ khi đóng tất cả các Forms con mới ra được Forms này, người dùng chỉ cần nhấp chọn CommandButton là sẽ thoát ra khỏi chương trình đồng thời ra khỏi Microsoft Access về Windows.
2. TRANG TRÍ:
Ta có thể trang trí cho nút lệnh ở thuộc tính Caption, thay vì là một chuỗi Text, ta thay vào đó một Picture, để diễn giải công dụng của nút lệnh này, khi đưa Mouse vào nút lệnh thì sẽ có một nhãn xuất hiện ghi phần diễn giải cho nút lệnh.
Để thực hiện được nhu cầu này, ta tạo nhãn và trang trí, đặt tên xong xuôi, tại thuộc tính OnMouseMove của FormDetain ta thực hiện đoạn code:
Private Sub Detail_MouseMove(Button As Integer, Shift As Integer, x As Single, Y As Single)
nhan.Visible = False End Sub
Tại nút lệnh thuộc tính OnMouseMove ta viết
Private Sub CmdOK_MouseMove(Button As Integer, Shift As Integer, x As Single, Y As Single)
nhan.Visible = True End Sub
Hình thức này thường dùng trên các Forms mang tính thống kê dữ liệu, có nhiều nút lệnh, cho nên các CommandButton cần thu gọn lại thành các Icon và được sắp đặt dưới dạng thanh ToolBars quen thuộc trong các ứng dụng của Windows.
Ngoài ra, một nút lệnh có thể thay đổi được nội dung diễn giải công dụng (Caption) của nó thông qua một Even có điều kiện:
Viết lệnh thay đổi thuộc tính này cho CommandButton có tên: MExit thông qua điều kiện chọn lựa từ nhóm nút chọn có tên Mselect, cách đơn giản nhất là dùng lệnh Select Case để xét điều kiện gửi vào chương trình:
Select Case MSelect Case 1 Mexit.Caption = “Cancel” Case 2 Mexit.Caption = “Close” Case Else Mexit.Caption = “Quit” End Select MỘT SỐ HÀM MẪU:
Public DocName, StLinkCriteria As String
Public VBRecTimer, VBRecName, VBRecJob As String Public QueryName, FormName As String