Python win32 使用方式

Python028

Python win32 使用方式,第1张

handle = win32gui.FindWindow('Galaxy2DEngine',None)

left, top, right, bottom = win32gui.GetWindowRect(handle)

win32gui.MoveWindow(handle, int x, int y, int w,int h,BOOL bRepaint )

pos = win32gui.GetCursorPos()

win32api.SetCursorPos([x, y])

title = win32gui.GetWindowText(handle)

clsname = win32gui.GetClassName(handle)

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)

win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0)

win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0)

def click_it(self,x,y):

#设置鼠标位置

win32api.SetCursorPos([x, y])

#获取鼠标位置

pos = win32api.GetCursorPos()

#通过鼠标位置获取窗体句柄

handle= win32gui.WindowFromPoint(pos)

#通过窗体名称获取窗体句柄(可通过spy++获取)

#handle = win32gui.FindWindow('Galaxy2DEngine',None)

#获取Title &ClassName

title = win32gui.GetWindowText(handle)

clsname = win32gui.GetClassName(handle)

#把在屏幕上鼠标的位置转换为打开的程序的客户区的坐标

client_pos =win32gui.ScreenToClient(handle,pos)

tmp=win32api.MAKELONG(client_pos[0],client_pos[1])

#发送激活窗口消息 并发送鼠标按下-抬起消息,依赖具体的窗体(handle),窗体内位置(tmp)

win32gui.SendMessage(handle, win32con.WM_ACTIVATE,win32con.WA_ACTIVE,0)

win32gui.SendMessage(handle, win32con.WM_LBUTTONDOWN,win32con.MK_LBUTTON,tmp)

win32gui.SendMessage(handle, win32con.WM_LBUTTONUP,win32con.MK_LBUTTON,tmp)

#win32gui.SendMessage(handle, win32con.WM_RBUTTONDOWN,win32con.MK_LBUTTON,tmp)

#win32gui.SendMessage(handle, win32con.WM_RBUTTONUP,win32con.MK_LBUTTON,tmp)

python引用win32com显示没有win32api是缺少了windows系统API的库这个模块,安装这个模块即可。

1、要去下载一个win32com。

2、到sourceforge下载一个pywin32扩展进行安装即可。