Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python win32gui在窗口上绘制假光标,同时使用WM_MOUSEMOVE模拟鼠标_Python_Winapi_Drawing_Win32gui_Hwnd - Fatal编程技术网

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)
。但是,该函数甚至不渲染/绘制光标。

您无法可靠地渲染到您不拥有的窗口上。如果需要渲染光标的位置,请在目标窗口顶部创建一个(部分透明)覆盖窗口,并渲染到该窗口。