# 获取文本框控件在屏幕上的位置和大小信息 rect = edit.Rectangle() # 计算要点击的坐标位置(相对于控件左上角) x = rect.width // 2 y = rect.height // 2
时间: 2024-03-11 13:45:51 浏览: 95
对的,这段代码获取了文本框控件在屏幕上的位置和大小信息,并计算出要点击的坐标位置,使得点击的位置在控件的中心位置。`edit.Rectangle()`返回的是一个`pywinauto.win32structures.RECT`对象,包含了控件的左上角坐标和右下角坐标,可以通过`.left`、`.top`、`.right`和`.bottom`属性来获取具体的坐标值。其中,`width`和`height`属性分别表示控件的宽度和高度。
相关问题
rectangle 获取屏幕坐标
在 Pywinauto 中,可以使用控件的 `rectangle()` 方法获取它的矩形坐标。而该矩形坐标是相对于其父窗口的客户区域坐标。因此,如果您想获取控件在屏幕上的绝对坐标,需要将其客户区域坐标转换为屏幕坐标。
以下是一个示例代码,演示如何使用 Pywinauto 获取控件在屏幕上的绝对坐标:
``` python
from pywinauto import Application
# 启动应用程序
app = Application().start("notepad.exe")
# 获取主窗口句柄
main_dlg = app.UntitledNotepad
# 获取编辑框控件句柄
edit_ctrl = main_dlg.Edit
# 获取控件的客户区域矩形坐标
ctrl_rect = edit_ctrl.rectangle()
# 将客户区域坐标转换为屏幕坐标
screen_x = main_dlg.rectangle().left + ctrl_rect.left
screen_y = main_dlg.rectangle().top + ctrl_rect.top
print("控件在屏幕上的绝对坐标为:({}, {})".format(screen_x, screen_y))
# 关闭应用程序
app.kill()
```
该代码将启动记事本应用程序,并获取其编辑框控件在屏幕上的绝对坐标。您可以根据需要修改代码来选择其他控件并获取它们的位置信息。
阅读全文