PC端自动化测试(一) pywinauto:同时支持控件操作和图像操作,支持Win32 API和MS UI Automation API A set of Python modules to auto
示例中有一个数据工作表Sheet1,包含有一个列表,每一行的单元格中都有很多用逗号分隔的数据,如下图1所示。
构建一个倾斜45°的卧式车床如下图,因此X轴有45°的斜度。塔盘上有12个指针位置,样板程序将使用3把刀具,机床初始位置在X460Z520。
有小伙伴后台给我留言,说「 pywinauto 」作为 WinAppDriver 的替代方案,也能完美完成 PC 端的自动化
Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍ListWidget列表框组件的常用方法及灵活运用。
「Pywinauto 」作为 WinAppDriver 的替代方案,能完美完成 PC 端的自动化吗?闲话少说,是骡子是马,牵出来遛遛,证明一下!
在开发项目中要显示一组数据且可以选择一项或多项的时候,可以使用ListBox列表框。SelectionMode设置选择单项和多项,全选使用SelectAll属性进行设置。
上次有点仓促,有几个地方没有明确。 后者是整个流程,前者是其中的一个步骤,是一个简单的思路说明,其中前三段代码都是表单控件里面的。 2、我要写的是一个表单控件,b/s结构里面的控件。虽然内部会有点
简介 INTRODUCTIONlistbox列表框控件和combobox组合框控件的用法类似,只是界面风格不同。
本文内容在于讨论用pywinauto 如何获取微信控件的问题,欢迎各位大牛指点迷津。
CListBox 一:词条简介 CObject←CCmdTarget←CWnd←CListBox CListBox类提供Windows列表框的功能。列表框显示项的列表,如用户可以见到和选择的文件名称。在单选列表框里,用户只可选择一个项。在多选列表框里,可选择许多项。当用户选择某项时,其高亮显示且列表框给父窗口发送一个通知消息。 可从对话模板或直接在你的代码中创建列表框。直接创建时,构造CListBox对象,再调用Create成员函数创建Windows列表框控件并将其附加给CListBox对象。要在对
我们在日常使用各种桌面软件时,当我们想要搜索一个内容时,都会出现一个列表框,供我们选择,如下图:
Spinner其实就是一个列表选择框。不过Android的列表选择框并不需要显示下拉列表,而是相当于弹出一个菜单供用户选择。
在《Excel实战技巧68:创建级联列表框(使用ADO技术)》中,我们使用ADO技术将列表框中的项目关联起来,实现了级联列表框。
在《Excel实战技巧67:在组合框中添加不重复值(使用ADO技巧)》中,我们使用记录集技巧给组合框添加了不重复值,并概要讲述了ADO记录集基础知识。本文利用记录集技巧,创建级联列表框。
ASP.NET Dropdownlist 错误 “Cannot have multiple items selected in a DropDownList.”
ListBox是Windows中的一种控件,一般被当做子窗口使用,Windows中所有子窗口都是通过发送一个通知码到父窗口父窗口通过WM_COMMAND消息接收,并在此消息中处理,并控制子窗口,ListBox自然也不例外,ListBox中有它独有的消息,通知消息,风格,查看MSDN可以看到风格主要有:
python中通常我们写程序,显示结果和操作都是在终端区,如果要想实现一个有显示界面的程序那该怎样实现呢?python中有好几个库都可以实现,这个系列我们一起来学习如何使用python自带的tkinter库来实现。
1. 常用属性列表: SelectionMode 组件中条目的选择类型,即多选(Multiple)、单选(Single) Rows 列表框中显示总共多少行 Selected 检测条目是否被选中 SelectedItem 返回的类型是ListItem,获得列表框中被选择的条目 Count 列表框中条目的总数 SelectedIndex 列表框中被选择项的索引值 Items 泛指列表框中的所有项,每一项的类型都是ListItem 2. 取被选中项的值 ListBox.SelectedValue 3. 添加项: ListBox.Items.Add("所要添加的项"); 4. 移出指定的项: //首先判断列表框中的项是否大于0 If(ListBox.Items.Count > 0 ) { //移出选择的项 ListBox.Items.Remove(ListBox.SelectedItem); } 5. 清空所有项: //首先判断列表框中的项是否大于0 If(ListBox.Items.Count > 0 ) { //清空所有项 ListBox.Items.Clear(); } 6. 列表框可以一次选择多项: 只需设置列表框的属性 SelectionMode="Multiple",按Ctrl可以多选 动态设置代码如下: ListBox.SelectionMode = SelectionMode.MultiExtended; 7. 两个列表框联动,即两级联动菜单 //判断第一个列表框中被选中的值 switch(ListBox1.SelectValue) { //如果是"A",第二个列表框中就添加这些: case "A": ListBox2.Items.Clear(); ListBox2.Items.Add("A1"); ListBox2.Items.Add("A2"); ListBox2.Items.Add("A3"); //如果是"B",第二个列表框中就添加这些: case "B": ListBox2.Items.Clear(); ListBox2.Items.Add("B1"); ListBox2.Items.Add("B2"); ListBox2.Items.Add("B3"); } 8. 实现列表框中项的移位 即:向上移位、向下移位 具体的思路为:创建一个ListBox对象,并把要移位的项先暂放在这个对象中。如果是向上移位,就是把当前选定项的的上一项的值赋给当前选定的项,然后把刚才新加入的对象的值,再附给当前选定项的前一项。 具体代码为: //定义一个变量,作移位用 index = -1; //将当前条目的文本以及值都保存到一个临时变量里面 ListItem lt=new ListItem (ListBox.SelectedItem.Text,ListBox.SelectedValue); //被选中的项的值等于上一条或下一条的值 ListBox.Items[ListBox.SelectedIndex].Text=ListBox.Items[ListBox.SelectedIndex + index].Text; //被选中的项的值等于上一条或下一条的值 ListBox.Items[ListBox.SelectedIndex].Value=ListBox.Items[ListBox.SelectedIndex + index].Value; //把被选中项的前一条或下一条的值用临时变量中的取代 ListBox.Items[ListBox.SelectedIndex].Test=lt.Test; //把被选中项的前一条或下一条的值用临时变量中的取代 ListBox.Items[ListBox.SelectedIndex].Value=lt.Value; //把鼠标指针放到移动后的那项上 ListBox.Items[ListBox.SelectedIndex].Value=lt.Value; 9. 移动指针到指定位置: (1).移至首条
在这个例子中显示了一个下拉列表框和一个标签,其中下拉列表框中有几个选项,既可以使用QCombobox的addItem()方法添加单个选项,也可以使用addItems()方法添加多个选项:标签显示的是从下拉列表框中选择的选项
最近在进行Android方向的学习,所以今天在这里和大家总结一下在Android开发中最经常使用的单选框、复选框、下拉框、列表框的详细使用教程,
本文转载:http://www.cnblogs.com/luqingfei/archive/2007/03/28/691372.html
使用功能区“开发工具”选项卡,我们可以在工作表中插入控件,例如,可以插入列表框控件,如下图1所示。
列表框控件:可以包含一个或者多个文本框。作用:在 ListBox 控件的小窗口显示项目列表 注意 selectmode 几种方式的区别: 1.BROWSE:通常,只能从列表框中选择一行。如果单击一个项目,然后拖动鼠标会跟随选中,是默认的。 2.SINGLE:和 BROWSE 的区别是你只能选择一行,不能拖动。 3.EXTENDED:通过 shift 和 control 可以使 ListBox 支持连选和多选,能拖动 4.MULTIPLE:支持连选和多选,但不能拖动 列表框 ListBox I # 创建一个
下载地址: http://www.cnblogs.com/jyk/archive/2008/07/29/1255891.html 大家是怎么处理CRUD的呢? 这里说一下添加、修改数据。 一大堆的表,n多的字段,经常变化的表现形式(比如文本框换成下拉列表框等),是不是很头痛?反正我是很烦的,因为我太懒了,对于这种不是太重要的,但是有很繁琐的东东,我总是要向出来一种“简单”的方式来处理。 怎么办?表单控件,我还一直使用VS2003,没有VS2005里面的表单控件,所以只好自己写了,另外好像V
如果要使用组合框跟列表框.那么就要知道.组合框列表框是最核心的东西就是索引. 索引是从0开始的.
HTML 和 JavaScript 综合练习题一、单项选择 1. Web 使用( D )在服务器和客户端之间传输数据。 A.FTP B. Telnet C. E-mail D. HTTP 2. HTTP 服务默认……
手风琴是个垂直罗列的元素组合,例如标签或缩略图,这允许用户切换内容模块的展示。每个标签元素可以被用来展开折叠、暴露隐藏其相关内容。手风琴一般被用来减少页面滚动,当在单个页面中呈现很多内容模块时。
文章接前一篇文章:Python 学习之 Tkinter「上 」 文章来源还是来自于我的知识星球球友.Python绿色通道 GUI教程就这么多了,完全满足我们日常做小工具的需求了,如果要继续深入可以自己研究。
第一个原型非常简单,他确实实现了文件共享功能,但对用户不太友好。如果用户能够知道有哪些文件可用(这些文件可能是程序启动时就位于文件目录中,也可能是后来从其他节点那里下载的),将大有裨益。再次实现将实现这种列出文件的功能。
在本篇博客中,我们将展示如何使用我们在 Python 图形化界面基础课程中学到的知识来设计和实现一个小型 GUI 项目。这个项目是一个简单的待办事项( To-Do )应用程序,允许用户添加、编辑和删除任务。我们将一步步创建这个应用程序,涵盖窗口创建、布局设计、按钮操作、文本框、列表视图和事件处理等关键概念。
Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Class来操作字符串列表。 1、定义控件对应变量
e语言,也叫“易语言” 是一种中文的编程语言 官网详细的介绍在这里: 1。非运行语句。 非运行语句包括以下几种。 (1)注释型语句 易语言的注释型语句的格式是: ' 注释语句内容 注释语句不能被程序执行,只是用来解释上一行或前面代码的意思。编译时易语言不会把注释代码也编译到可执行文件中。 2。值型语句。(也可称属性型语句) 特征:有一个"="号将左右两边连起来 这是大家学习易语言时首先会接触的一类语句。例如: 标签1。标题 = "中文编程技术,易语言!" 这句代码的意思是:标签1的标题是:"中文编程技术,易语言!"——即将标签1的标题属性值定为"中文编程技术,易语言!"(所谓赋值)。我们所见的给变量赋值就是用此类语句。赋值语句常见有以下两类: (1)将某一对象的某种属性值赋给另一对象。例如: 标签1。标题 = 编辑框5。内容 意思即是"标签1"的标题跟编辑框5中的内容一样。比如我们在编辑框5中输入"易语言使英语盲也学会了编程",那么在相关事件(如单击按钮)的驱动下,标签1的标题也相应显示为"易语言使英语盲也学会了编程"。 (2)将某一类型的属性值赋予某个对象。例如: 标签1。
其实原理也很简单,分成两个部分,一个是服务器端,一个是客户端。 首先要设置记录集,这里用DataSet来装载,二级联动,里面就要有两个DataTable;三级联动,里面就要有三个DataTable。同理,n级联动就要有n个DataTable。 然后用第一个DataTable来绑定第一个DropDownList。第一个DropDownList是固定生成的,其他的DropDownList则是根据级数动态new出来的。 服务器端会根据联动级数来动态创建下拉列表框。就是这样:lst = new My
SetupFactory中可以通过其API控制很复杂的业务需求。 下图中展示了其内置的API种类与具体分类函数。 序号 API名称 API说明 1 Application.Exit 退出安装程序
在这个例子中显示了一个下拉列表框和一个标签,其中下拉列表框中有5个选项,既可以使用QComboBox的addltem()方法添加单个选项,也可以使用addltems()方法添加多个选项,标签显示的是从下拉列表框中选择的选项。
前面发了一个文本框的,这回发一个下拉列表框。 一般在写自定义控件之前都要考虑一下原来的控件(系统代的)有什么优缺点,有哪些功能是我想要的,但是自带的控件没有提供,或者提供的不是太理想。 那么对于 下拉列表框 我个人感觉有几个地方用着不是太方便。 1、绑定数据库。 当下拉列表框里的数据需要从数据库里提取的时候,就需要设置DataValueField 和 DataTextField 的属性,每次用的时候都要设置一下,这个比较烦。 (不好意思,我比较懒) 我的方法是在自定义控件的OnInit 时间里面
python 中的各种界面库,大部分都是基于事件驱动。做界面一般困扰大部分人的,无非几个关键点:
1、 窗体 的属性 1、常用属性 (1)Name属性:用来获取或设置窗体的名称,在应用程序中可通过Name属性来引用窗体。 (2) WindowState属性: 用来获取或设置窗体的窗口状态。 取值有三种: Normal (窗体正常显示)、 Minimized(窗体以最小化形式显示)和 Maximized(窗体以最大化形式显示)。 (3)StartPosition属性:用来获取或设置运行时窗体的起始位置。其取值及含义如表9-1 所示。默认的起始位置是WindowsDefaultLocation。 (4)Text属性:该属性是一个字符串属性,用来设置或返回在窗口标题栏中显示的文字。 (5)Width属性:用来获取或设置窗体的宽度。 (6)Height属性:用来获取或设置窗体的高度。 (7)Left属性:用来获取或设置窗体的左边缘的x坐标(以像素为单位)。 (8)Top属性:用来获取或设置窗体的上边缘的y坐标(以像素为单位)。 (9)ControlBox属性:用来获取或设置一个值,该值指示在该窗体的标题栏中是否显示控制框。值为true时将显示控制框,值为false时不显示控制框。 (10)MaximizeBox属性:用来获取或设置一个值,该值指示是否在窗体的标题栏中显示最大化按钮。值为 true时显示最大化按钮,值为false时不显示最大化按钮。 (11)MinimizeBox 属性:用来获取或设置一个值,该值指示是否在窗体的标题栏中显示最小化按钮。值为 true时显示最小化按钮,值为false时不显示最小化按钮。 (12)AcceptButton 属性:该属性用来获取或设置一个值,该值是一个按钮的名称,当按 Enter 键时就相当于单击了窗体上的该按钮。 (13)CancelButton 属性:该属性用来获取或设置一个值,该值是一个按钮的名称,当按 Esc 键时就相当于单击了窗体上的该按钮。 (14)Modal 属性:该属性用来设置窗体是否为有模式显示窗体。如果有模式地显示该窗体,该属性值为true;否则为 false。当有模式地显示窗体时,只能对模式窗体上的对象进行输入。必须隐藏或关闭模式窗体(通常是响应某个用户操作),然后才能对另一窗体进行输入。有模式显示的窗体通常用做应用程序中的对话框。 (15)ActiveControl属性:用来获取或设置容器控件中的活动控件。窗体也是一种容器控件。 (16)ActiveMdiChild属性:用来获取多文档界面(MDI)的当前活动子窗口。 (17)AutoScroll 属性:用来获取或设置一个值,该值指示窗体是否实现自动滚动。如果此属性值设置为true,则当任何控件位于窗体工作区之外时,会在该窗体上显示滚动条。另外当自动滚动打开时,窗体的工作区自动滚动,以使具有输入焦点的控件可见。 (18)BackColor属性:用来获取或设置窗体的背景色。 (19)BackgroundImage属性:用来获取或设置窗体的背景图像。 (20)Enabled 属性:用来获取或设置一个值,该值指示控件是否可以对用户交互作出响应。如果控件可以对用户交互作出响应,则为 true;否则为false。默认值为true。 (21)Font属性:用来获取或设置控件显示的文本的字体。 (22)ForeColor属性:用来获取或设置控件的前景色。 (23)IsMdiChild属性:获取一个值,该值指示该窗体是否为多文档界面(MDI)子窗体。值为 true时,是子窗体,值为false时,不是子窗体。 (24)IsMdiContainer 属性:获取或设置一个值,该值指示窗体是否为多文档界面(MDI)中的子窗体的容器。值为true时,是子窗体的容器,值为false时,不是子窗体的容器。 (25)KeyPreview属性:用来获取或设置一个值,该值指示在将按键事件传递到具有焦点的控件前,窗体是否将接收该事件。值为true时,窗体将接收按键事件,值为false时,窗体不接收按键事件。 (26)MdiChildren属性:数组属性。数组中的每个元素表示以此窗体作为父级的多文档界面(MDI)子窗体。 (27)MdiParent属性:用来获取或设置此窗体的当前多文档界面(MDI)父窗体。 (28)ShowInTaskbar属性:用来获取或设置一个值,该值指示是否在Windows任务栏中显示窗体。 (29)Visible属性:用于获取或设置一个值,该值指示是否显示该窗体或控件。值为true 时显示窗体或控件,为 false时不显示。 (30)Capture属性:如果该属性值为true,则鼠标就会被限定只由此控件响应,不管鼠标是否在此控件的范围内。 2、常用的方法 下面介绍一些窗体的最常用方法。 (1)Show方法:该方法的作用是让窗体显示出来,其调用格式为: 窗体名.
在项目开发中好多地方用了枚举,要把枚举显示到下拉列表框中我们平常的方法就是在下拉列表控件中一个一个添
Winform控件是Windows Forms中的用户界面元素,它们可以用于创建Windows应用程序的各种视觉和交互组件,例如按钮、标签、文本框、下拉列表框、复选框、单选框、进度条等。开发人员可以使用Winform控件来构建用户界面并响应用户的操作行为,从而创建功能强大的桌面应用程序。
继续,这是第四章了。这里涉及到了资源方面的,不过有点绕,所以这里先介绍一下表结构,在后面的章节里面,再举例子详细介绍。 通用权限想要写的文章目录:(这是第四章) 1、 简介、数据库的总体结构 2、 介绍人员表组 3、 介绍组织结构表组 4、 介绍角色表组 5、 介绍“项目自我描述表组” 6、 权限到节点 7、 权限到按钮 8、 权限到列表(表单、查询) 9、 权限的验证 10、 资源方面的权限 11、 角色管理的程序(给客户用的) 12、 权限下放 13、 个性化设置 A、、 【自然框架】之
联动列表框,简简单单的五个字,仅仅从字面上看,就可以分出来两个职责: 职责一:列表框 职责二:联动 我们先来看这两个职责,然后再说引申出来的另外两个职责。 职责一,列表框。列表框分为很多种,比如下拉列表框(DropDownList)、列表框(ListBox),还有为了美观用div模拟的,以及RadioBoxList,CheckBoxList等。首先一个问题就是,用哪种列表框,然后是其ID、name等属性的命名规范。然后是列表框是怎么出来的?是写死在body里,还是用js动态创建出来,还是其他的什么方式? 这
要想做好表单组件,必须先知道HTML5里面的表单和表单元素都有哪些属性,以及属性的效果和作用,否则的话可能折腾半天才发现,原来HTML5已经自带了这个功能! 比如要实现这样一个功能:文本框只能输入数字,然后要加上两个按钮,按一个数值+1,按另一个数值-1。以前要写js代码实现,现在只需要把type改成number就可以了。而且可以对输入的文字做拦截,非数字根本输入不进去,这样就不用我们自己再去写代码实现了。所以磨刀不误砍柴工,我们先来整理一下,表单和表单属性都有哪些属性。
今天要跟大家分享的是动态图表5——列表框(offset函数)。 制作思路与前一篇中使用index函数制作思路基本一致,先用列表框制作菜单,然后使用offset函数制作动态数据源,最后插入图表完成动态图
Pywinauto是一个强大的Python库,用于自动化Windows应用程序的界面操作。无论是进行GUI测试、数据采集还是自动化任务,Pywinauto都能提供便捷的解决方案。本文将介绍Pywinauto的基本使用方法,帮助读者快速上手并开始自动化Windows界面操作。
在单个选项下,存在多组互斥选项,且互斥选项组之间存在一定关系,可以考虑混用分段控件和常规按钮,由于分段控件在视觉上占用更大的面积,故给人在层级上更加置前。
前面学了pywinauto 基础操作手,总不能老拿记事本练手,是时候找个常用的应用实战了,比如用微信实现自动发消息。
多个列表框联动,不算是啥大问题,但是却挺麻烦,那么怎么才能够尽量方便一点呢?网上搜了一下,没发现太好用的,于是就自己写了一个。基于jQuery,无限级联动,支持下拉列表框和列表框。 先说一下步骤和使用方法: 1、在页面里设置列表框 城市:<select name="c5118020" id="ctrl_001" > <option value="-99999">请选择</option><option value="1">沈阳</option><option value="2">抚顺</op
转:pywinauto教程https://blog.csdn.net/weixin_40161673/article/details/83246861
领取专属 10元无门槛券
手把手带您无忧上云