python模拟操作用win32api,win32gui 等API获取到一个菜单句柄后,如何点击?
天蓬老师
天蓬老师 2017-04-18 10:09:10
0
1
1081

第一次做模拟的操作,不太懂模拟,

如图已经获取到系统设置这个句柄


网上找了demo,demo里只有用win32api.SetCursorPos([30,150])这样定死的坐标,我觉得不应该这么死的呀,应该可以根据句柄获取坐标的吧?
还有可不可以直接对这个发送点击操作?应该怎么写代码?

或者获取一些相对坐标什么的?想请问大神们应该怎么写后面的代码?
下面的是我参照DEMO写的

#-*-coding:utf-8-*-
#http://www.jb51.net/article/49214.htm
import os
import time
import win32gui
import win32api
import win32con
from PIL import ImageGrab
#os.startfile("D:\\artcut6\\Prog\\Artcut6.exe")
#time.sleep(1)
wdname1=u"软件标题"
w1hd=win32gui.FindWindow(0,wdname1)
print w1hd
#获取第一个子UI句柄
w2hd=win32gui.FindWindowEx(w1hd,None,None,None)
print w2hd
#获取'系统设置'的句柄
w3hd=win32gui.FindWindowEx(w2hd,None,None,'系统设置')
print w3hd

#获取窗口焦点
win32gui.SetForegroundWindow(w3hd)
天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全員に返信(1)
小葫芦

左、上、右、下 = win32gui.GetWindowRect(hwnd)
win32api.SetCursorPos((left+5,top+5))
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0, 0)
time.sleep(0.05)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0, 0)

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート