⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 在程序运行中通过鼠标移动标签.txt

📁 VB技巧问答10000例 VB技巧问答10000例
💻 TXT
字号:
以 下 是 一 个 例 子 
    module1: 
    Option Explicit 
    Public Const GWL_WNDPROC = (-4) 
    Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long 
    Public 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 Long 
    Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long 
    Public proc As Long 
    Public bMove As Boolean 
    Public Const WM_MOUSEMOVE = &H200 
    Public Const WM_LBUTTONDOWN = &H201 
    Public Const WM_LBUTTONUP = &H202 
    Public xPos As Long, ypos As Long 
     
    Public Function NewProc(ByVal hw As Long, ByVal uMsg As _ 
    Long, ByVal wParam As Long, ByVal lParam As Long) As _ 
    Long 
     Dim txPos As Long, tyPos As Long 
     
     If uMsg = WM_LBUTTONDOWN Then 
     txPos = lParam And 65535 
     tyPos = lParam / 65536 
     If txPos >= Form1.Label1.Left And txPos <= Form1.Label1.Left + Form1.Label1.Width _ 
     And tyPos >= Form1.Label1.Top And tyPos <= Form1.Label1.Top + Form1.Label1.Height Then 
     bMove = True 
     xPos = txPos 
     ypos = tyPos 
     End If 
     ElseIf uMsg = WM_LBUTTONUP Then 
     bMove = False 
     ElseIf uMsg = WM_MOUSEMOVE And bMove Then 
     txPos = lParam And 65535 
     tyPos = lParam / 65536 
     Form1.Label1.Left = Form1.Label1.Left + txPos - xPos 
     Form1.Label1.Top = Form1.Label1.Top + tyPos - ypos 
     Form1.Caption = txPos & ":" & tyPos 
     xPos = txPos 
     ypos = tyPos 
     End If 
     
     NewProc = CallWindowProc(proc, hw, uMsg, wParam, lParam) 
     
    End Function 
    Form1:(请 放 一 个 label) 
    Option Explicit 
    Private Sub Form_Load() 
     proc = GetWindowLong(Me.hwnd, GWL_WNDPROC) 
     SetWindowLong Me.hwnd, GWL_WNDPROC, AddressOf NewProc 
    End Sub 
    如 有 更 好 的 方 法 请 告 知 。 
<END>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -