python绑定游戏窗口模拟键盘鼠标操作方法
工具
python 64位和32位都可以
引用模块
import win32gui
import win32api,win32con
一、例子
import win32gui
import win32api,win32con
hwnd = win32gui.FindWindow('MainWindow', None) # 通过'MainWindow'窗口类名获取窗口句柄 类名可通过第三方软件获取窗口类名
win32gui.SetActiveWindow(hwnd) #激活窗口
rect=win32gui.GetWindowRect(hwnd) #获取窗口坐标(左、右、宽,高)
win32api.SendMessage(hwnd, win32con.WM_LBUTTONDOWN, win32con.MK_LBUTTON, win32api.MAKELONG(x, y)) # 模拟鼠标按下(x,y)为坐标
win32api.SendMessage(hwnd, win32con.WM_LBUTTONUP, 0, win32api.MAKELONG(x, y)) # 模拟鼠标释放(x,y)为坐标
#win32api.SendMessage(hwnd, win32con.WM_MOUSEMOVE, win32con.MK_LBUTTON, win32api.MAKELONG(x, y)) # 鼠标移动需要时使用
二、获取子窗口句柄如下:
# win32gui.FindWindow(类名,标题) 获取父级窗口句柄
Hand1 = win32gui.FindWindow('LDPlayerMainFrame','雷电模拟器(64)')
print(Hand1)
# win32gui.FindWindowEx(父级窗口句柄,None,类名,标题) 获取子级窗口句柄
Hand2 = win32gui.FindWindowEx(Hand1,None,'RenderWindow', 'TheRender')
print(Hand2)
三、使用win32gui发送消息
def send_text(hwnd, text):
win32gui.SendMessage(hwnd, win32con.WM_SETTEXT, None, text) #hwnd为窗口句柄,text为需要发送的文字内容
四、向窗口中插入图片文章来源:https://www.toymoban.com/news/detail-811356.html
import win32clipboard, win32con, win32gui
def set_clipboard_image(image_path):
win32clipboard.OpenClipboard()
win32clipboard.EmptyClipboard()
image = Image.open(image_path)
data = image.tobytes()
bdata = bytes([0])
formats = [win32clipboard.RegisterClipboardFormat('PNG')]
win32clipboard.SetClipboardData(win32clipboard.CF_DIB, (bdata, data))
win32clipboard.CloseClipboard()
def insert_image(hwnd, x, y):
win32api.SetForegroundWindow(hwnd)
set_clipboard_image(image_path)
lParam = win32api.MAKELONG(x, y)
win32api.SendMessage(hwnd, win32con.WM_PASTE, None, None)
其中,image_path代表要插入的图片路径,x和y代表图片的坐标。先使用Pillow库(Python图片处理库,需单独安装)读取待插入的图片,将其转换为字节数组,并将数据设置为剪贴板的内容。之后再使用SendMessage函数向指定窗口发送“粘贴”命令即可插入图片。文章来源地址https://www.toymoban.com/news/detail-811356.html
到了这里,关于python绑定游戏窗口模拟键盘鼠标操作方法64位32位通用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!