python win32api获取句柄_PYTHON:Win32函数大全

Win32gui: Windows图形界面接口模块。主要负责操作窗口切换以及窗口中元素id标签的获取

Win32api: Windows开发接口模块。主要负责模拟键盘和鼠标操作,对win32gui获取的标签进行点击/获取值/修改值等操作

Win32con:全面的库函数,提供Win32gui和Win32api需要的操作参数

Win32gui 函数

FindWindow

hld=win32gui.FindWindow(ClassName,Title)

ClassName:窗口的类名

Title:窗口的标题名称,即左上角的文字描述信息

hld:返回结果为当前窗口的句柄信息,

以下是使用AutoItv3抓取的Windows【另存为】窗口信息:

hld=win32gui.FindWindow("#32770",u"另存为")

>>>> Window <<<<

Title: 另存为 #这里就是上面的Title

Class: #32770 #这里就是上面的ClassName

Position: 0, 0

Size: 680, 480

Style: 0x96CC02C4

ExStyle: 0x00010101

Handle: 0x001E03A0 #这里就是上面函数返回值

SetForegroundWindow

win32gui.SetForegroundWindow(hld)

hld:为上面获取到的窗口句柄信息

主要用于激活该窗口,此时窗口会是最前面一层

在找到窗口句柄后,需要先将窗口设置为最前面一层才能模拟鼠标键盘操作当前窗口上的元素。

FindWindowEx

win32gui. FindWindowEx(hld,Child, ClassName, Title)

hld:目标窗口的父窗口,也是上面获取到的窗口句柄信息。通过父向下找子

Child:目标窗口的子窗口。通过子向上找父,从而找到目标窗口

ClassName:目标窗口的类名

Title:目标窗口的标题名称,即文字描述信息

以下是使用AutoItv3抓取的Windows【另存为】窗口的【保存】按钮信息:

button=win32gui.FindWindowEx(hld,None, "Button",None)

>>>> Control <<<<

Class: Button #这里就是上面的ClassName

Instance: 1

ClassnameNN: Button1

Name:

Advanced (Class): [CLASS:Button; INSTANCE:1]

ID: 1

Text: 保存(&S) #这里就是上面的Title

Position: 459, 400

Size: 88, 30

ControlClick Coords: 45, 26

Style: 0x50030000

ExStyle: 0x00000004

Handle: 0x000C12A2 #这里就是上面函数返回值

GetDlgItem

button=win32gui.GetDlgItem(hld,ID)

hld:目标窗口的父窗口,也是上面获取到的窗口句柄信息。通过父向下找子

ID: 目标窗口ID

上面的例子,使用ID来抓取Windows【另存为】窗口的【保存】按钮信息为:

button=win32gui. GetDlgItem (hld,1)

注:需要确保,多次打开窗口时目标窗口ID是不变的,才能准确获取目标窗口句柄

SendMessage

SendMessage(hWnd, Msg, wParam, lParam)

hWnd:接收消息的窗体句柄

Msg:要发送的消息,这些消息都是wind

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值