新概念VB中窗体鼠标显示字符串

新概念VB中窗体鼠标显示字符串

Option Explicit 
 Private Type POINTAPI
 X As Long 
 Y As Long 
 End Type 
 Private Declare Function ScreenToClient Lib "user32" (ByVal hwnd As Long, lpPoint As POINTAPI) As Long 
 Private Declare Function ClientToScreen Lib "user32" (ByVal hwnd As Long, lpPoint As POINTAPI) As Long 
 Private Declare Function SetCursorPos Lib "user32" (ByVal X As Long, ByVal Y As Long) As Long 
 Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long 
 Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long) 
 Private Enum MouseClick 
 '定义鼠标常数
 MOUSEEVENTF_LEFTDOWN = &H2 
 MOUSEEVENTF_LEFTUP = &H4 
 MOUSEEVENTF_RIGHTDOWN = &H8 
 MOUSEEVENTF_RIGHTUP = &H10 
 MOUSEEVENTF_MIDDLEDOWN = &H20 
 MOUSEEVENTF_MIDDLEUP = &H40 
 End Enum 
 Private Sub Command1_Click() 
 Dim pt As POINTAPI 
 pt.X = Me.ScaleWidth \ Screen.TwipsPerPixelX \ 2 
 pt.Y = Me.ScaleHeight \ Screen.TwipsPerPixelY \ 2 
 ClientToScreen Me.hwnd, pt 
 SetCursorPos pt.X, pt.Y '鼠标自动移动到屏幕的中心位置. 
 mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 '自动按下按钮2 
 End Sub 
 Private Sub Command2_Click() 
 Print "123" '按下按钮2后输出字符123 
 End Sub 
 Private Sub Form_Load() 
 With Command2 
 .Left = (Me.ScaleWidth - .Width) \ 2 
 .Top = (Me.ScaleHeight - .Height) \ 2
 End With 
 End Sub 
 Private Sub Timer1_Timer() 
 Dim pt As POINTAPI 
 Call GetCursorPos(pt) 
 ScreenToClient Me.hwnd, pt 
 Label1 = "x=" & pt.X & ";y=" & pt.Y '随时显示鼠标的相对于窗体坐标x 
 End Sub

温馨提示:答案为网友推荐,仅供参考
相似回答