Private Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) 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 Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Declare Function SetForegroundWindow Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function SetActiveWindow Lib "user32" (ByVal hwnd As Long) As Long
'Private Declare Function SetFocusAPI& Lib "user32" Alias "SetFocus" (ByVal Hwnd As Long)
'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 GetWindowRect Lib "user32" (ByVal Hwnd As Long, lpRect As RECT) As Long
'Private Function GetDesktopWindowRect(Hwnd As Long, Rct As RECT, MousePos As POINTAPI) As Boolean
Private Const MOUSEEVENTF_LEFTDOWN = &H2
Private Const MOUSEEVENTF_LEFTUP = &H4
Private Declare Function GetForegroundWindow Lib "user32" () As Long
Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, wndRect As RECT) As Long
Private Type RECT
x As Long
y As Long
Right As Long
Bottom As Long
End Type
Dim ActiveWindowRECT As RECT
Dim ActiveWindowHwnd As Long
Private Sub Command1_Click()
Dim tWnd As Long
tWnd = FindWindow(vbNullString, "PP助手 (1.0.6.4, Beta)") '找到父窗口句柄
'ClientToScreen tWnd, Point(200, 200)
SetForegroundWindow tWnd '激活窗口
GetWindowRect tWnd, ActiveWindowRECT
'SetActiveWindow tWnd
'SetFocusAPI& tWnd
Debug.Print ActiveWindowRECT.x 'text1为X坐标
Debug.Print ActiveWindowRECT.y 'text2为Y坐标
AutoPressMouse ActiveWindowRECT.x + 100, ActiveWindowRECT.y + 172 '鼠标点击
'Sleep 3000
'387 374
'AutoPressMouse 165, 254
End Sub
Private Sub AutoPressMouse(x As Long, y As Long)
SetCursorPos x, y
' mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
End Sub
Private Sub Command2_Click()
ActiveWindowHwnd = GetForegroundWindow
GetWindowRect ActiveWindowHwnd, ActiveWindowRECT
Debug.Print ActiveWindowRECT.x 'text1为X坐标
Debug.Print ActiveWindowRECT.y 'text2为Y坐标
' Dim Rects As RECT, ExecuteValue As Boolean
' Dim MousePoint As POINTAPI
' ExecuteValue = GetDesktopWindowRect(Command2.Hwnd, Rects, MousePoint)
' Debug.Print "ExecuteValue=" & ExecuteValue
' Debug.Print "Rects.Top=" & Rects.Top
' Debug.Print "Rects.Left=" & Rects.Left
' Debug.Print "Rect.Bottom=" & Rects.Bottom
' Debug.Print "Rect.Right=" & Rects.Right
' Debug.Print "MousePoint.X= " & MousePoint.X
' Debug.Print "MousePoint.Y=" & MousePoint.Y
End Sub
分享到:
相关推荐
本资源“VB模拟鼠标左键单击和移动.rar”提供了一个VB应用程序,能够实现鼠标左键的单击以及移动功能。通过该程序,开发者可以更好地理解和学习如何在VB环境中控制鼠标的动作。 首先,我们来看模拟鼠标左键单击的...
通过以上介绍,我们可以了解到在VB环境中利用 `SetCursorPos` 和 `mouse_event` 函数可以轻松实现鼠标的模拟移动及点击操作。这种方法在自动化测试、游戏辅助等方面有着广泛的应用。需要注意的是,在实际应用中,应...
VB托盘区头像闪烁VB托盘区头像闪烁VB托盘区头像闪烁VB托盘区头像闪烁VB托盘区头像闪烁VB托盘区头像闪烁VB托盘区头像闪烁VB托盘区头像闪烁VB托盘区头像闪烁VB托盘区头像闪烁VB托盘区头像闪烁VB托盘区头像闪烁VB托盘区...
在VB中创建的鼠标点击器可以实现自动化的鼠标点击,它通过编程逻辑来控制鼠标的移动和点击行为。开发者可以设定特定的坐标点,让程序在这些点上进行精确的点击,也可以设置定时器,使点击按照预设的间隔时间连续进行...
这表明程序具有一定的灵活性,可能包含了一个循环结构和时间控制模块,使得鼠标点击可以在设定的时间间隔内自动执行。同时,它特别提到了“秒杀幼儿园”,这可能意味着这个工具被设计用来帮助用户快速完成在线抢购,...
VB 6.0单击按钮移动鼠标到指定位置,如示例图所示的效果,单击按钮后,将鼠标移动在屏幕的左上角。 Private Sub Command1_Click() '移动鼠标 Label1.Caption = "鼠标在屏幕的左上角!" SetCursorPos 0, 0 ...
它具备三个主要功能:文件自动移动、批量删除以及重命名,这些功能对于日常的文件管理和整理工作非常有用。下面将详细介绍这三个核心知识点。 **文件自动移动** 文件自动移动是程序的核心功能之一。在设定的条件...
在VB(Visual Basic)编程中,将程序最小化到系统托盘是一项常见的需求,这可以使程序在不占用桌面空间的情况下持续运行。标题“VB---vb最小化到右下角托盘”指的就是如何使用VB来实现这个功能。下面将详细解释这一...
在VB程序中,可以使用这些图标作为程序的主图标和托盘图标,为程序增添视觉效果。 5. **代码模块(Module)**:Module1.bas可能包含了实现托盘功能的代码。在VB中,模块用于存放全局变量、常量和通用函数,我们可以...
1.窗口打开后,程序在任务栏和托盘同时显示 2.点击最小化,任务栏上的不消失,只是最小化,同时托盘的图标也存在 3.点击关闭按钮,程序从任务栏消失,只有系统托盘 4.无论在何时,鼠标左键单击托盘图标,窗口重新显现 5.系统...
在VB(Visual Basic)编程中,"托盘气球提示"是一种常见的用户界面...通过学习和理解这段代码,开发者可以学会如何在自己的VB应用程序中集成托盘气球提示功能,从而提高用户体验,尤其是在需要低调提示用户重要信息时。
在VB6.0编程环境中,系统托盘应用模块是一个非常实用的功能,允许程序最小化到系统托盘区域,而不是任务栏。这样的设计可以为用户提供更简洁的桌面环境,同时保持程序运行状态。以下是对"vb6.0系统托盘应用模块"的...
描述 "左键其他位置托盘菜单消失" 提示我们这个VB应用可能有一个功能,即当用户在系统托盘图标上点击鼠标左键时,会弹出一个菜单。如果用户在托盘区以外的地方点击,这个菜单会自动隐藏或消失,这是为了保持界面整洁...
标题"vb限制鼠标移动范围"所描述的功能,就是通过编程来控制鼠标只能在指定区域内活动,超出这个范围鼠标指针将无法移动。这通常涉及到对Windows消息的处理和鼠标事件的捕捉。 首先,我们需要了解VB中的基本事件...
通过以上分析可以看出,这个VB程序通过定时器控制鼠标移动到特定位置并触发点击事件,实现了基本的自动点击功能。值得注意的是,由于该程序依赖于外部库函数,确保运行环境正确安装了必要的DLL文件是非常重要的。...
本知识点主要涉及如何利用VB来限制鼠标活动区域、改变光标样式、锁定鼠标以及调整鼠标双击的时间间隔。此外,还包括如何改变鼠标位置、释放鼠标、恢复默认光标、显示或隐藏鼠标以及交换鼠标左右键的功能。 1. **...
摘要:VB源码,系统相关,托盘图标 vb托盘图标管理器源码,获取托盘图标模块(注:当程序抹改的句柄不取其图标,如一些杀毒),搭配modSysVersion(取当前系统版本),modIconToPic(转换ICON句柄为一般图片文件)...