测试对象: 窗口 菜单 文件 from pywinauto.application import Application # 启动Navicat app = Application("uia").start...(r"D:\Navicat for MySQL\navicat.exe") # 选择窗口 dlg = app["Navicat for MySQL"] # 选择菜单 menu = dlg["menu"]...# 选择菜单项:文件 file = menu.child_window(title="文件") 查看控件类型 wrapper_object() dlg.wrapper_object() # Dialog..."file.png") 菜单操作 获取菜单的子菜单项 menu.items() 通过下标去选择菜单项 menu.item_by_index(1) 通过路径去选择菜单项 menu.item_by_path...菜单项的方法 获取菜单项 file.items() 点击菜单项 file.click_input() 点击新建连接 需要先点击文件出现了「新建连接...」后再点击 file.click_input()
通过 menu().items() 可以获取当前级次下的菜单项,再通过 sub_menu() 判断是有下级菜单项,不断的递归,把所有的菜单项打印出来。...# -*- coding: UTF8 -*- from pywinauto import Application import psutil def get_pid(name): '''...name): return pid.pid def list_menu(menu_item, space): ''' 作用:递归法遍历菜单...get_pid("notepad.exe")) win = app.window(title_re = "cmd.txt - 记事本") list_menu(win.menu(), "") # 菜单栏操作...win.menu_select("文件->页面设置") 我以记事本来做个示例,效果图如下: 这是菜单栏操作的效果图演示,我打开的是页面设置:
编辑类控件的基本操作 通过记事本来进行测试 import pywinauto app = pywinauto.Application().start("notepad.exe") # 选择主窗口 dlg...替换 通过菜单选择替换 选择替换窗口app["替换"] 选择查找编辑框并输入World 选择替换为编辑框并输入Python 点击全部替换按钮 dlg.menu_select("编辑->替换(R)") app...webdriver.Chrome() browser.get(url=url) browser.find_element_by_xpath("//button[@id='test1']").click() # 使用...new_connect(self, title, host, port, user, password): """ 新建连接 """ # 选择菜单栏...sql = "^a{}".format(sql.replace(" ", "{VK_SPACE}")) + ";" send_keys(sql) # 使用运行快捷键
如下图所示: [在这里插入图片描述] 图 3.12 快速修正代码错误 2.5优化导入列表 代码中经常会导入无用的包和类,通过菜单Source -> Organize Imports或者在编辑器的上下文菜单中选择菜单项...如下图所示: [在这里插入图片描述] 图 3.13 配置安装的JRE 2.7查看类定义,层次和源码 查看类定义或者其源码,可以在编辑器的上下文菜单中选择Open Declaration,或者选择菜单Navigate...查看类的继承层次,可以在编辑器的上下文菜单中选择Open Type Hierarchy,或者选择菜单Navigate -> Open Type Hierarchy,或者按下F4键,或者将类或者包拖放到Hierarchy...首先选中Package Explorer视图的文件节点(Java类或者普通文件都可以),那么点击菜单Edit -> Copy 或者在Package Explorer视图的项目节点的上下文菜单中选择Copy...如果发现新加入的文件没有显示在Eclipse中,可以在Package Explorer视图中选择上下文菜单中的Refresh或者按下快捷键F5就可以看到了。
如下图所示: 图 3.12 快速修正代码错误 2.5优化导入列表 代码中经常会导入无用的包和类,通过菜单Source -> Organize Imports或者在编辑器的上下文菜单中选择菜单项...如下图所示: 图 3.13 配置安装的JRE 2.7查看类定义,层次和源码 查看类定义或者其源码,可以在编辑器的上下文菜单中选择Open Declaration,或者选择菜单Navigate...查看类的继承层次,可以在编辑器的上下文菜单中选择Open Type Hierarchy,或者选择菜单Navigate -> Open Type Hierarchy,或者按下F4键,或者将类或者包拖放到Hierarchy...首先选中Package Explorer视图的文件节点(Java类或者普通文件都可以),那么点击菜单Edit -> Copy 或者在Package Explorer视图的项目节点的上下文菜单中选择Copy...如果发现新加入的文件没有显示在Eclipse中,可以在Package Explorer视图中选择上下文菜单中的Refresh或者按下快捷键F5就可以看到了。
在下文中,您将了解如何扩充每种类型的菜单。 创建选项菜单 在选项菜单中,您应当包括与当前 Activity 上下文相关的操作和其他选项,如“搜索”、“撰写电子邮件”和“设置”。...用户长按(按住)一个声明支持上下文菜单的视图时,菜单显示为菜单项的浮动列表(类似于对话框)。 用户一次可对一个项目执行上下文操作。 使用上下文操作模式。...用户选择菜单项时,系统将调用此方法,以便您能够执行适当的操作。...应用如何调用上下文操作模式以及如何定义每个操作的行为,具体取决于您的设计。 设计基本上分为两种: 针对单个任意视图的上下文操作。...使用可选中的菜单项 添加基于 Intent 的菜单项 允许将 Activity 添加到其他菜单中
VBE编辑器 此外,您也可以使用下面三种方式打开VBE编辑器: ■ 在任一工作表标签上单击鼠标右键,在弹出的菜单中选择“查看代码”,则可进入VBE编辑器访问该工作表的代码模块,如图00-03...在VBE编辑器的代码模块中输入VBA代码,通常有以下几种方法: ■ 手工键盘输入; ■ 使用宏录制器,即选择菜单“工具——宏——录制新宏”命令,将所进行的操作自动录制成宏代码; ■ 复制/粘贴代码...,即将现有的代码复制后,粘贴到相应的代码模块中; ■ 导入代码模块,即在VBE编辑器中选择菜单“文件——导入文件”或在“工程资源管理器”的任一对象上右击鼠标选择菜单“导入文件”,选择相应的代码文件导入...如果不想要某个模块了,可以选择菜单“文件——移除模块”,也可以在相应的模块上单击鼠标右键,从弹出的菜单中选择“移除模块”。...也可以选择菜单“文件——导出文件”或在相应的模块上单击鼠标右键后,从弹出的菜单中选择“导出文件”,将移除的模块保存在相应的文件夹中。这样,以后可以对其进行导入,从而加以利用。
PC端自动化测试(一) pywinauto:同时支持控件操作和图像操作,支持Win32 API和MS UI Automation API A set of Python modules to automate...Windows GUI 安装 python3环境(python3.5以上) pip环境 $ pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pywinauto...选择指定的窗口 # 方式一:app[类名/标题] :推荐使用该方式 # 1.通过窗口类型来选择dlg = app["TNavicatMainForm"] # 2.通过窗口标题来选择dlg = app["...PopupMenu 工具栏 Toolbar 树状视图 Tree View 菜单项 MenuItem 静态内容 Static 复选框 CheckBox 组框 GroupBox 对话框 Dialog 头部内容...Header 列表显示控件 ListView 选项卡控件 TabControl 工具提示 ToolTips 菜单 Menu 窗格 Pane
USB串口,所以除USB串口线外,你还需要接上第2条USB线) 3、 在电脑上安装驱动程序 4、 在开发板启动USB传输(在串口中选择菜单) 5、 在电脑上使用dnw_100ask.exe发送文件...dnw工具只会用到“USB Port -> Transmit”菜单项,其他菜单项统统不用管! 使用方法和之前的一样,这里再列出来 下面举例说明如何烧写系统: 1、烧写裸板: a....在u-boot菜单界面输入“n” b. 使用dnw工具的“USB Port -> Transmit”菜单项,发送u-boot.bin文件; c....在u-boot菜单界面输入“k”; b. 使用dnw工具的“USB Port -> Transmit”菜单项,发送光盘bin目录下的uImage文件; c....在u-boot菜单界面输入“j”; b. 使用dnw工具的“USB Port -> Transmit”菜单项,发送光盘bin目录下的fs_qtopia.jffs2文件; c.
通信图相当于不使用任何结构机制的简单序列图。 创建通信图 选择适当的Package节点,鼠标右键启动上下文菜单并选择【New Diagram】菜单项。...可以根据需求使用。这里统一使用Object。 接下来我们以某公司管理活动为例对通信图进行说明。...添加关联关系 我们使用Associate图标添加生命之间的关联关系。这种关系可以理解为不同生命线之间的沟通渠道,它们是通信的基础。 也可以根据需求为关联关系设置多重度等信息。...添加消息 在关联关系上按下鼠标右键启动上下文菜单。 根据消息的方向选择菜单项,这里我们选择从ProjectManager到Leader。
创建步骤同单文档程序大同小异,简单步骤如下: 1、选择菜单项File->New->Project,弹出"New Project"对话框; 2、左侧面板中Installed Templated...注:如果在VS2010中找不到Solution Explorer或Class View等视图,可以菜单项View下找到对应视图选项选择即可。 ...而如果再添加对话框需要创建新的对话框模板时,需要在 Resource View的"Dialog"节点上点击右键,在右键菜单中选择"Insert Dialog",就会生成新的对话框模板,并且会自动分配ID...三、设置对话框属性 在Addition对话框模板上点击右键,然后右键菜单中选择Properties,则在右侧面板中会显示对话框的属性列表。如下图: ? ...我们使用默认的 Popup类型。 7、System Menu:是否带有标题栏左上角系统菜单,包括移动、关闭等菜单项。我们使用默认的true。 8、Title Bar:是否带有标题栏。
比如希望在 hostname 为www.mazhuang.org的 SESSION 上右键后利用自己添加的菜单项将此 SESSION 的 hostname 修改为mazhuang.org后重新发送请求,...添加方法: 启动 Fiddler > 选择菜单 Rules > 选择菜单项 Customize Rules… > 将如下代码粘贴在OnDetach函数后面 > 保存 注:发现将下面的函数放在OnDetach...函数前自己添加的菜单项就不是第一项,而放在OnDetach后就是第一项了,这个很奇怪,未想到合理原因。...www.mazhuang.org 的请求"); } } 然后就能看到效果了,在 hostname 为www.mazhuang.org的 SESSION 上右键,点击刚刚我们自己添加的「发送到 mazhuang.org」菜单项...一次操作需要点选右键菜单项后再点击一次 Composer 窗口中的 Execute 按钮才能完成,比较理想的状况是点选右键菜单后即完成替换 hostname 且重新发出请求。
然后在MenuStrip控件上右键,选择“添加项”即可添加子控件,可以选择菜单项、下拉菜单等。...使用这两个属性很简单,只需要在设计器中选中相应的MenuStrip控件,然后在属性窗口中设置它们的值即可。...下面是一个简单的示例,展示如何设置GripMargin和GripStyle属性:// 设置GripMargin属性为4个像素menuStrip1.GripMargin = new Padding(4);...添加菜单项可以使用Add方法添加一个菜单项,示例代码如下:MenuStrip menuStrip1 = new MenuStrip();ToolStripMenuItem fileToolStripMenuItem...然后,使用以下代码在MenuStrip中动态添加菜单项,并处理菜单项的点击事件:using System;using System.Windows.Forms;namespace WinFormsMenuExample
Bartender 4 for Mac,一款菜单栏图标管理软件,能够帮助我们解决系统菜单栏图标越来越多,导致打开某些应用后被隐藏的问题,还你一个干净的Mac菜单栏,它能够创建一个二级的菜单栏,让我们把不需要直接显示的菜单栏的应用图标放在这个二级菜单栏中...图片Bartender 4 for MacBartender 4 mac新增功能键盘导航菜单项使用Bartender ,您可以使用键盘导航菜单项,只需使用热键激活然后通过它们按箭头,然后按返回进行选择。...搜索所有菜单项您现在可以搜索所有菜单项,从而可以快速访问菜单项而无需查找。只需使用热键激活或控制单击Bartender菜单项并开始输入。...更新了现代macOS的UIBartender Bar现在显示在菜单栏中,使其看起来像是macOS的一部分。完全重写现代macOSBartender 3已经改写为现代macOS。...使用最新技术和最佳实践Bartender 3更可靠,更强大,为未来的创新奠定了基础。控制菜单栏图标使用Bartender 3,您可以选择菜单栏中的应用程序,显示在Bartender 3栏中或完全隐藏。
你可以设立几个菜单栏,分为一级菜单栏和二级菜单栏,通过隐藏他们,重新排列或将其移动Bartender。...您可以显示完整的菜单栏,设置选项,以便在菜单栏中显示菜单栏项目,如果你需要更多的空间来存放所有菜单栏应用程序,选它就对了。...Bartender 4 for Mac图片使用Bartender ,您可以使用键盘导航菜单项,只需使用热键激活然后通过它们按箭头,然后按返回进行选择。...您现在可以搜索所有菜单项,从而可以快速访问菜单项而无需查找。只需使用热键激活或控制单击Bartender菜单项并开始输入。...使用最新技术和最佳实践Bartender 3更可靠,更强大,为未来的创新奠定了基础。使用Bartender 3,您可以选择菜单栏中的应用程序,显示在Bartender 3栏中或完全隐藏。
:菜单项 Pane:窗格 四、控件的相关属性获取 1、获取控件类型:wrapper_object() print(dlg.wrapper_object()) # 打印窗口的控件类型...print(menu.wrapper_object()) # 打印菜单项的控件类型 print(file.wrapper_object()) # 打印文件的控件类型 2、获取该控件支持的方法...1、获取菜单的子菜单项 print(menu.items()) 2、通过下标去选择菜单项 m = menu.item_by_index(0) print(m) 3、通过路径去选择菜单项 m =...menu.item_by_path("文件") 或 m = menu.item_by_path("文件 -> 新建连接...") print(m) 七、菜单项的操作方法 1、获取所有子选项:items...表示该窗口可见并启用· active:表示该窗口处于活动状态 timeout :超时时间 retry _interval :重试时间间隔 3、wait_cpu_usage_lower方法等待该进程的cup的使用率低于某个阀值
自己平时总结的一些使用 Fireworks 的操作技巧。...选中切片——单击鼠标右键——选择导出所选切片——设置图片的名称和图片保存的位置单击保存按钮后可以将图片保存在本地 取消选区的快捷键 Ctrl + D 撤销操作的快捷键 Ctrl + Z 删除PSD的背景层 使用指针工具...(黑色小箭头)选中需要删除的背景层,并且使用快捷键Ctrl + X,或者Delete键可以删除背景层 调节矩形选框工具的大小等属性的快捷键 Ctrl + T 使用引导线测量距离 选择菜单栏上的视图菜单—...—在视图菜单项中选择标尺,此时工作区的上边和左边都会显示一个标尺——将鼠标移动到标尺上,按住鼠标左键并往下拉,此时可以拉出一条引导线——重复一次上一个步骤,此时界面上有两条平行的参考线——将鼠标移动到两条参考线中间...,此时会删除选取框工具覆盖之内的图片区域 移动切片 在图层上添加了一个切片后,按住Ctrl键,将鼠标移到切片上,按住鼠标左键,拖动鼠标可以移动切片 显示优化面板 当界面上没有优化面板时候,可以点击点击菜单栏上的窗口菜单
不过基于Eclipse的广泛使用,当前还是有不少app使用ADT进行开发。 在Eclipse上安装插件的步骤如下:依次选择菜单“Help”——“Install New Software...”...svn检出项目 “VCS”——“Checkout from Version Control”——“Subversion” 4、更新/提交svn 右击项目,在右键菜单中选择“Subversion”—...(向svn提交文件) 安装插件 在Android Studio中安装插件的步骤与eclipse类似,具体步骤为:依次选择菜单“File”——“Settings”——“Plugins”——“Browser...,然后弹出一个当前可用插件列表的窗口,在该窗口的Category框中选择“Code tools”——选中指定插件——点击右边窗口的“Install”按钮,安装后重启Studio即可正常使用该插件的功能。...右击任意目录,在右键菜单中选择“New”,右方弹出的菜单列表末尾会出现“*** Drawable Importer”之类的菜单项,截图如下所示: ?
在这一篇文章里,我们来看一下Visual Studio的菜单和工具栏是如何被定义、创建、显示和使用的。不过这篇文章我只是说一下一些基本的知识,到下一篇文章我们再来看一些示例代码。...最常见的方式是创建一个菜单项,用户可以点击菜单来使用这些命令。另外,我们也可以让用户在类似控制台的地方敲入文本来调用我们的命令,例如VS的命令窗口(视图|其他窗口|命令窗口)。...静态的意思是这些菜单项只会被实例化和初始化一次(通常在package初始化的时候),并由始自终地保留它们的状态;动态的意思是这些菜单项在初始化之后,可以改变它们的状态或者外观,或者根据上下文的信息动态的创建这些菜单项...Visual Studio里的菜单项和命令处理 这一节我们来看一下VS是如何处理菜单和命令的。 命令的可见性 VS中的某些菜单和工具条会根据上下文的不同显示或者隐藏。...路由算法从上下文嵌套树的叶子节点开始,一直冒泡到树的根节点,即全局上下文。 路由算法 命令冒泡到的节点被称作“活动命令上下文”。
领取专属 10元无门槛券
手把手带您无忧上云