Capture the form to move and process

xiaoxiao2021-03-06  39

FORM1 code:

PRIVATE SUB FORM_LOAD () hookform me.hwndend Sub

Private Sub Form_Unload (Cancel AS Integer) UnHookform Me.hwndend Sub

Moudle1 code:

Private Declare Function CallWindowProc Lib "user32" Alias ​​"CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As LongPrivate Declare Function SetWindowLong Lib "user32" Alias ​​"SetWindowLongA "(ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As LongPrivate Const WM_FormMoving = 561Private Const WM_FormFinishMove = 562Private Const GWL_WNDPROC = (-4) Dim PrevProc As Long

Public Function WindowProc (ByVal hWnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long WindowProc = CallWindowProc (PrevProc, hWnd, uMsg, wParam, lParam) Select Case uMsg Case WM_FormMoving Form1.Caption = " "Case WM_FORMFINISHMOVE FORM1.CAPTION =" Mobile "end selectens"

Public Sub Hookform (Byval Hwnd As Long) PrevProc = SetWindowlong (HWND, GWL_WNDPROC, Addressof WINDOPROC) End Sub

Public Sub UnHookform (Byval Hwnd As Long) SetWindowlong Hwnd, GWL_WndProc, Prevprocend Sub

转载请注明原文地址:https://www.9cbs.com/read-59380.html

New Post(0)