打开对话框并将其分配给变量后,print_control_identifiers()(也称为PrintControlIdentifiers)方法应该打印所有可用的控件.

>>> app = Application.Start('Notepad')

>>> app.UntitledNotepad.MenuItem("Edit -> Replace").Select()

>>> app.Replace.print_control_identifiers()

Control Identifiers:

Static - 'Fi&nd what:' (L1456, T336, R1528, B349)

'Fi&nd what:' 'Fi&nd what:Static' 'Static' 'Static0' 'Static1'

Edit - '' (L1531, T332, R1702, B352)

'Edit' 'Edit0' 'Edit1' 'Fi&nd what:Edit'

Static - 'Re&place with:' (L1456, T363, R1528, B376)

'Re&place with:' 'Re&place with:Static' 'Static2'

Edit - '' (L1531, T360, R1702, B380)

'Edit2' 'Re&place with:Edit'

Button - 'Match &case' (L1458, T422, R1547, B442)

'CheckBox2' 'Match &case' 'Match &caseCheckBox'

Button - '&Find Next' (L1711, T328, R1786, B351)

'&Find Next' '&Find NextButton' 'Button' 'Button0' 'Button1'

Button - '&Replace' (L1711, T355, R1786, B378)

'&Replace' '&ReplaceButton' 'Button2'

Button - 'Replace &All' (L1711, T383, R1786, B406)

'Button3' 'Replace &All' 'Replace &AllButton'

Button - 'Cancel' (L1711, T410, R1786, B433)

'Button4' 'Cancel' 'CancelButton'

>>> app.Replace.PrintControlIdentifiers()

Control Identifiers:

Static - 'Fi&nd what:' (L1456, T336, R1528, B349)

'Fi&nd what:' 'Fi&nd what:Static' 'Static' 'Static0' 'Static1'

Edit - '' (L1531, T332, R1702, B352)

'Edit' 'Edit0' 'Edit1' 'Fi&nd what:Edit'

Static - 'Re&place with:' (L1456, T363, R1528, B376)

'Re&place with:' 'Re&place with:Static' 'Static2'

Edit - '' (L1531, T360, R1702, B380)

'Edit2' 'Re&place with:Edit'

Button - 'Match &case' (L1458, T422, R1547, B442)

'CheckBox2' 'Match &case' 'Match &caseCheckBox'

Button - '&Find Next' (L1711, T328, R1786, B351)

'&Find Next' '&Find NextButton' 'Button' 'Button0' 'Button1'

Button - '&Replace' (L1711, T355, R1786, B378)

'&Replace' '&ReplaceButton' 'Button2'

Button - 'Replace &All' (L1711, T383, R1786, B406)

'Button3' 'Replace &All' 'Replace &AllButton'

Button - 'Cancel' (L1711, T410, R1786, B433)

'Button4' 'Cancel' 'CancelButton'

每个控件的第二行输出是不同的标识符(尽管应删除空格和&符号(&)之类的内容.

Windows Media Player很可能不使用“标准”Win32对话框.但是Open对话应该很容易..

这是我对此测试的输出(删除了错误和错误以保护有罪:))

>>> wmp = Application.Start(r'C:\Program Files (x86)\Windows Media Player\wmplayer.exe')

>>> wmp.WindowsMediaPlayer.TypeKeys("^O")

>>> wmp.Open.PrintControlIdentifiers()

Control Identifiers:

DUIViewWndClassName - '' (L200, T187, R1152, B590)

'DUIViewWndClassName' 'Files of &type:DUIViewWndClassName'

DirectUIHWND - '' (L200, T187, R1152, B590)

'DirectUIHWND' 'DirectUIHWND0' 'DirectUIHWND1' 'Files of &type:DirectUIHWND' 'Files of &type

:DirectUIHWND0' 'Files of &type:DirectUIHWND1'

CtrlNotifySink - '' (L201, T217, R426, B590)

'CtrlNotifySink' 'CtrlNotifySink0' 'CtrlNotifySink1' 'Files of &type:CtrlNotifySink' 'Files

of &type:CtrlNotifySink0' 'Files of &type:CtrlNotifySink1'

NamespaceTreeControl - 'Namespace Tree Control' (L201, T217, R426, B590)

'Namespace Tree Control' 'Namespace Tree Control0' 'Namespace Tree Control1' 'Namespace Tree

ControlNamespaceTreeControl' 'NamespaceTreeControl'

SysTreeView32 - 'Tree View' (L201, T217, R426, B590)

'Tree View' 'Tree ViewTreeView' 'TreeView'

CtrlNotifySink - '' (L429, T217, R1152, B590)

'CtrlNotifySink3' 'Files of &type:CtrlNotifySink2'

SHELLDLL_DefView - 'ShellView' (L429, T217, R1152, B590)

'SHELLDLL_DefView' 'ShellView' 'ShellViewSHELLDLL_DefView'

DirectUIHWND - '' (L429, T217, R1152, B590)

'DirectUIHWND2' 'Files of &type:DirectUIHWND2'

Static - 'File &name:' (L330, T603, R384, B618)

'File &name:' 'File &name:Static' 'Static2'

ComboBoxEx32 - '' (L389, T599, R935, B623)

'ComboBoxEx' 'File &name:ComboBoxEx'

ComboBox - '' (L389, T599, R935, B623)

'ComboBox' 'ComboBox0' 'ComboBox1' 'File &name:ComboBox' 'File &name:ComboBox0' 'File &name:

ComboBox1'

Edit - '' (L393, T604, R917, B619)

'Edit' 'File &name:Edit'

Static - 'Files of &type:' (L200, T152, R200, B152)

'Files of &type:' 'Files of &type:Static' 'Files of &type:Static0' 'Files of &type:Static1'

'Static3'

ComboBox - 'Media files (all types)' (L947, T599, R1135, B622)

'ComboBox2' 'File &name:ComboBox2' 'Files of &type:ComboBox'

Button - '&Open' (L947, T628, R1035, B654)

'&Open' '&OpenButton' 'Button' 'Button0' 'Button1'

Button - 'Cancel' (L1047, T628, R1135, B654)

'Button2' 'Cancel' 'CancelButton'

ScrollBar - '' (L1137, T651, R1152, B666)

'CancelScrollBar' 'ScrollBar3'

WorkerW - '' (L200, T152, R1152, B187)

'Files of &type:WorkerW' 'WorkerW'

ReBarWindow32 - '' (L200, T152, R1152, B187)

'Files of &type:ReBar' 'ReBar'

TravelBand - '' (L200, T152, R270, B184)

'Files of &type:TravelBand' 'TravelBand'

ToolbarWindow32 - '' (L202, T154, R270, B184)

'Files of &type:Toolbar' 'Files of &type:Toolbar0' 'Files of &type:Toolbar1' 'Toolbar' 'Tool

bar0' 'Toolbar1'

Address Band Root - '' (L270, T156, R944, B179)

'Address Band Root' 'Files of &type:Address Band Root'

msctls_progress32 - '' (L272, T157, R942, B178)

'Files of &type:Progress' 'Progress'

Breadcrumb Parent - '' (L272, T157, R898, B178)

'Breadcrumb Parent' 'Files of &type:Breadcrumb Parent'

ToolbarWindow32 - 'Address: C:\\Program Files (x86)\\Windows Media Player' (L272, T157, R898, B178

)

'Address: C:\\Program Files (x86)\\Windows Media Player' 'Address: C:\\Program Files (x86)\\

Windows Media PlayerToolbar' 'Toolbar2'

ToolbarWindow32 - '' (L898, T157, R942, B178)

'Files of &type:Toolbar2' 'Toolbar3'

UniversalSearchBand - '' (L948, T156, R1152, B179)

'Files of &type:UniversalSearchBand' 'UniversalSearchBand'

Search Box - '' (L948, T156, R1152, B179)

'Files of &type:Search Box' 'Search Box'

SearchEditBoxWrapperClass - '' (L953, T156, R1147, B179)

'Files of &type:SearchEditBoxWrapperClass' 'SearchEditBoxWrapperClass'

DirectUIHWND - '' (L953, T156, R1147, B179)

'DirectUIHWND3' 'Files of &type:DirectUIHWND3'

>>>

>>> wmp.Open.FilenameEdit.TypeKeys(r"c:\your_file_name.mp3")

>>> wmp.Open.Open.Click()

你可以看到(希望)FilenameEdit来自

Edit - '' (L393, T604, R917, B619)

'Edit' 'File &name:Edit'

python标识符_python – 如何访问pywinauto中的控件标识符相关推荐

  1. 嵌套母版页中的控件访问

    嵌套母版页中的控件访问 左直拳 嵌套母版页中的控件访问很别扭. 如果一个内容页对应一个没有嵌套的母版页,访问这个母版页上的控件众所周知:类似(Button)Page.Master.FindContro ...

  2. C# 子线程中访问主线程中的控件

    /** 要想线程操作主线程的控件,首先声明一个委托(delegate)D,* 然后实例化委托d,再然后再子线程中使用this.BeginInvoke(d),* 就可以访问主线程的控件.* */usin ...

  3. wxpython富文本_Python实例讲解 -- wxpython 基本的控件 (文本)

    使用基本的控件工作 wxPython 工具包提供了多种不同的窗口部件,包括了本章所提到的基本控件.我们涉及静态文本.可编辑的文本.按钮.微调.滑块.复选框.单选按钮.选择器.列表框.组合框和标尺.对于 ...

  4. android怎么查看方法被谁调用,Android中查看布局文件中的控件(view,id)在哪里被调用(使用)...

    在阅读别人的代码时通常是很痛苦的,有时很想要看一看布局中的控件在哪里被调用了,为之很苦恼 在这里提供一种方法. 复制要查看的控件ID,到R文件中搜索到该ID, 接下来就好办的了,选中ID按下Ctrl鼠 ...

  5. .NET中添加控件数组

    作者:cuike519的专栏   http://blog.csdn.net/cuike519/ 添加控件数组 在.NET里面我好像没有找到有关于控件数组的说明,但是前两天偶在网上看到了一篇关于如何在. ...

  6. asp.net findcontrol html控件,findcontrol-在ASP.NET中查找控件的更好方法

    findcontrol-在ASP.NET中查找控件的更好方法 我有一个复杂的asp.net表单,在一个表单中甚至有50到60个字段,例如FindControl(),在MultiView中我有GridV ...

  7. VC程序中实现控件的动态生成与响应

    动态控件是指在需要时由Create()创建的控件,这与预先在对话框中放置的控件是不同的. 一.创建动态控件: 为了对照,我们先来看一下静态控件的创建. 放置静态控件时必须先建立一个容器,一般是对话框, ...

  8. python 阻止锁屏_想要自己的手机锁屏更加安全吗?python带你打造个性的锁屏控件...

    原标题:想要自己的手机锁屏更加安全吗?python带你打造个性的锁屏控件 Python是一种面向对象.直译式电脑编程语言,也是一种功能强大的通用型语言,已经具有近二十年的发展历史,成熟且稳定.它包含了 ...

  9. LabVIEW中ActiveX控件、ActiveX服务器和类型库注册

    LabVIEW中ActiveX控件.ActiveX服务器和类型库注册 如何在计算机上手动注册ActiveX控件(.ocx ).ActiveX服务器(.DLL和.EXE)以及类型库(.TLB )? 在L ...

最新文章

  1. python常见的数据类型_Python中常见的数据类型总结
  2. isolate-user-vlan隔离用户vlan的配置
  3. 一个很奇怪的 OpenCV出错:resize的坑
  4. 【机器学习基础】(四):通俗理解支持向量机SVM及代码实践
  5. 通用计算机系统的工作方式,通用计算机操作系统典型体系结构综述
  6. mysql修改root密码的方法
  7. acm省赛选拔组队赛经验谈
  8. 让敏捷的回顾会议变得有趣而高效
  9. Windows下React Native开发01 -- Android开发环境搭建
  10. pth转onnx:RuntimeError: Exporting the operator uniform to ONNX opset version 9 is not supported.
  11. 统计字符串中含指定字符个数
  12. 用计算机如何绘制流程图,电脑上怎么绘制流程图?电脑小白也能学会的流程图制作方法...
  13. 关于ROS+Gazebo通过cmd_vel或键盘控制节点发布速度消息时,仿真小车运动速度相反问题
  14. Mapreduce Wordcount白名单 Python实现
  15. 第一章 复数 1-2 复数的几何表示
  16. 设计模式----创建型设计模式(单例模式、工厂方法模式、构建者模式)
  17. 剪刀石头布(你出一个版)
  18. 爬虫实战——中国天气网数据
  19. Rsync 服务部署与参数详解
  20. 双视图特征点匹配———使用RANSAC法剔除误差点

热门文章

  1. solox,免费的移动应用性能测试工具
  2. NGO and NGO Management
  3. QQ用mysql数据库我没有_使用Mysql实现QQ数据库管理
  4. ireport+jasperreport 直接输出到打印机 普通报表 交叉报表
  5. 如何避免快递业务中的货物运输损坏
  6. java 地图四色着色算法_继陈景润之后周立敬攻破世界三大数学难题之一:地图四色难题...
  7. 在matlab中为什么在使用fft后作图时要加绝对值
  8. 点击按钮打开windows计算器,python代码示例,有GUI界面,直接写代码
  9. ACPI相关(11)- PCC实例
  10. python科赫曲线的代码_python – 实现Koch曲线?