我正在尋找一個MS-Access窗體事件,它可以檢查窗體上的活動控件是否已更改爲另一個控件;當它運行一個小腳本時。活動控件更改事件 - MS Access
函數必須是隻在表單處於活動狀態時才能運行的函數(如單擊表單等)。然而,Form_Click()不起作用,因爲它不知道是不是同一個窗口..我不知道那裏發生了什麼。 Form_Click()也只適用於單擊表單件而不是控件(如記錄選擇器)的情況。此方法應該適用於所有控件,只有一種方法,而不是每個控件的一種方法。
我的代碼:
Private Sub <<Form_ActiveHasChanged()>>
desc = Forms(Me.Form.Name).Controls(Me.ActiveControl.Name).StatusBarText
Me.txtInfo.Caption = desc
End Sub
其中<<Form_ActiveHasChanged()>>
是我的事件..是有辦法做到這一點?我不能使用定時器,就好像用戶從窗體導航離開,Me.ActiveControl不再在窗口中並引發錯誤。或者,如果有人知道檢查的方法:
If (Me.Form IS IN ACTIVE WINDOW) Then ....
失去焦點不適合嗎?之後,API可能適合。 – Fionnuala
問題是我想讓它在窗體上的所有控件上工作;我有一些形式(無數標籤)的30多個控件。另外我相信Lost_Focus()也會受到「控件不在活動窗口」錯誤的影響。我會更多地澄清我的問題。 – StuckAtWork