Python win32gui在窗口上绘制假光标,同时使用WM_MOUSEMOVE模拟鼠标
我正在使用Python win32gui在窗口上绘制假光标,同时使用WM_MOUSEMOVE模拟鼠标,python,winapi,drawing,win32gui,hwnd,Python,Winapi,Drawing,Win32gui,Hwnd,我正在使用win32gui.PostMessage(hwnd,win32con.WM_MOUSEMOVE,wParam,lParam)在外部应用程序(例如游戏)上模拟(假)鼠标移动。原因是我可以使用鼠标,而python脚本将使用模拟鼠标与外部应用程序交互 应用程序的反应正确,就像它是一只真正的鼠标一样,但是,我还想看看虚拟/模拟/假鼠标 基于此,我创建了以下内容: def drawFakeCursor(hwnd, x, y): hdc = win32gui.GetDC(hwnd)
win32gui.PostMessage(hwnd,win32con.WM_MOUSEMOVE,wParam,lParam)
在外部应用程序(例如游戏)上模拟(假)鼠标移动。原因是我可以使用鼠标,而python脚本将使用模拟鼠标与外部应用程序交互
应用程序的反应正确,就像它是一只真正的鼠标一样,但是,我还想看看虚拟/模拟/假鼠标
基于此,我创建了以下内容:
def drawFakeCursor(hwnd, x, y):
hdc = win32gui.GetDC(hwnd)
hCursor = win32gui.LoadCursor(0, win32con.IDC_ARROW)
dc, ps = win32gui.BeginPaint(hwnd)
win32gui.DrawIcon(hdc, x, y, hCursor)
win32gui.EndPaint(hwnd, ps)
并在每次
WM\u MOUSEMOVE
后执行drawFakeCursor(hwnd,x,y)
。但是,该函数甚至不渲染/绘制光标。您无法可靠地渲染到您不拥有的窗口上。如果需要渲染光标的位置,请在目标窗口顶部创建一个(部分透明)覆盖窗口,并渲染到该窗口。