最近自学python, 想起以前用C++在VS上实现的连连看辅助工具, 决定拿此来练手.
首先需要下载并安装python的相关插件:Pywin32(操作windows窗口), Pyqt(设计gui), py2exe(将python转成exe), 并假定已经有spy(研究窗口标题与类).
首先要查找到连连看的窗口, 打开连连看游戏, 然后再打开SPY查看相关窗口标题, 类名, 如下图:
可以看到此窗口的标题是"QQ游戏 - 连连看角色版", 并继续查看spy可以看到, 此标题唯一, 故可以以此来查找相关窗口, 网上搜索一下, 发现win32gui等类是比较推荐的操作窗口内的扩展包, 故下载安装Pywin32包, 然后相关操作如下:
import win32gui, win32con, win32api, win32ui
def find_llk_hwnd_DC(self):
hwnd=win32gui.FindWindow(None,"QQ游戏 - 连连看角色版")
if not hwnd:
return [None, None]
else:
print(hwnd)
win32gui.ShowWindow(hwnd, win32con.SW_RESTORE)
win32gui.SetForegroundWindow(hwnd)
hwndDC = win32gui.GetWindowDC(hwnd)
mfcDC=win32ui.CreateDCFromHandle(hwndDC)
llkDC=mfcDC.CreateCompatibleDC()
saveBitMap = win32ui.CreateBitmap()

这篇博客介绍了如何使用Python及其相关库Pywin32和Pyqt来创建连连看游戏的辅助工具。作者首先通过查找窗口标题和类名定位到连连看游戏窗口,然后进行屏幕截图和图像处理,统计每个模块的像素值。通过递归算法查找可消除的相同模块,最终实现了自动识别和点击的功能。

447

被折叠的 条评论
为什么被折叠?



