'Это в модуль Option Compare Database Option Explicit Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Public Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long Public Declare Function SetTimer& Lib "user32" (ByVal hWnd&, ByVal nIDEvent&, ByVal uElapse&, ByVal lpTimerFunc&) Public Declare Function KillTimer& Lib "user32" (ByVal hWnd&, ByVal nIDEvent&) Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long Public Const NV_INPUTBOX As Long = &H5000& Public Const EM_SETPASSWORDCHAR = &HCC Private CaptionText As String Public Sub TimerProc(ByVal hWnd&, ByVal uMsg&, ByVal idEvent&, ByVal dwTime&) Dim myHwnd As Long myHwnd = FindWindowEx(FindWindow(vbNullString, CaptionText), 0, "Edit", "") Call SendMessage(myHwnd, EM_SETPASSWORDCHAR, 42, 0) KillTimer Access.hWndAccessApp, idEvent End Sub
Public Function InputBoxEx(Prompt As String, Caption As String) As String Dim xxx As String CaptionText = Caption SetTimer Access.hWndAccessApp, NV_INPUTBOX, 10, AddressOf TimerProc xxx = InputBox(Prompt, Caption) InputBoxEx = xxx MsgBox (xxx) End Function
|