gui设计

GUI测试之通用测试篇---GUI测试总结

余生颓废 提交于 2019-12-08 01:34:05
GUI测试总结 From to: http://blog.csdn.net/imlogic/archive/2007/05/28/1628375.aspx GUI,GRAPHICAL USER INTERFACE的缩写,通常发音为GOO-ee。众所周之,GUI就是使用图像,输入的文字,带图标的屏幕的计算机界面,取而代之许多键盘的功能。GUI让用户可以通过图标和鼠标与他们的电脑进行交互,而不是在命令行中输入文本。 第一个图形用户界面是由Xerox Palo Alto 研究中心在1970年设计的,但是直到1980年代随着苹果的Macintosh出现GUI才开始流行起来。导致其被长时间才被接受的一个原因是GUI需要相当多的CPU和质量好的显示器,而这些在以前都是相当昂贵的。 现在主要的操作系统都提供了图形用户界面,如Microsoft的Windows, Apple的Mac OS和 Sun Microsystem的OpenWindows等. 利用计算机的图形能力产生的程序界面使得程序更加容易被使用。良好设计的图形用户界面可以使用户从负责的命令语言中解放出来。 一般来说,应用程序有以下的基本的组件(或者说是元素): 光标(pointer):显示在屏幕上让用户移动以选择对象和命令的符号。通常显示为一个小的箭头。但是在文字处理的应用程序则是用象大写I一样的光标。 图标(icon)/图片

客户端GUI测试技术和自动化测试架构设计简谈

北城余情 提交于 2019-12-08 01:25:47
客户端自动化特点 客户端的自动化,通常做过的人都不是很愿意深入讨论。因为除了功能和逻辑之外,不得不面对各种界面变化,各种和环境交互,各种兼容问题以及想不到灰色地带,就算这样,也找不到太多有效的bug。然而即便如此,客户端的自动化必须去做,尤其是GUI的。它的自动化特点是: 复杂 成本高 不容易发现问题 技术要求高 架构很难通用 下面,从一些基本的东西开始一点点的讨论客户端GUI测试的一些问题和处理办法,以及自动化架构设计的一些思路。事实上就像上面说的,GUI的测试并不是为了发现bug,而是回归的一种方式,作为保证而已——它过了不能说明质量多么好,但是不过,质量肯定不达标。即使在微软内部,客户端的GUI一样不是个受欢迎的家伙,通常用来做BVT的测试(或一些重要性回归,冒烟等)。 客户端自动化简述 这里并不花过多的笔墨介绍什么是客户端,或者如何分类的种种——这些东西教材和网上的东西一坨一坨很多很多,这里可能“漫谈”的,是实际工作中,客户端和GUI自动化中可能遇到的一些底层技术,基本上原理,架构设计方法以及一些项目存在困惑,这些方面的一些处理的方法。 最早的自动化 我个人认为所谓的计算机行业的自动化,是一直跟着这个行业的发展在走,比如下面的这些: 老式计算机——CPU计算: 最早自动解决手工分配穿孔的卡片问题 内存分配任务调度:操作系统的核心就是内存和任务的自动管理 系统配置Loader

GUI测试总结

允我心安 提交于 2019-12-08 01:25:08
GUI 测试总结 GUI,GRAPHICAL USER INTERFACE的缩写,通常发音为GOO-ee。 众所周之, GUI 就是使用图像,输入的文字,带图标的屏幕的计算机界面,取而代之许多键盘的功能。 GUI 让用户可以通过图标和鼠标与他们的电脑进行交互,而不是在命令行中输入文本。 第一个图形用户界面是由 Xerox Palo Alto 研究中心在 1970 年设计的,但是直到 1980 年代随着苹果的 Macintosh 出现 GUI 才开始流行起来。导致其被长时间才被接受的一个原因是 GUI 需要相当多的 CPU 和质量好的显示器,而这些在以前都是相当昂贵的。 现在主要的操作系统都提供了图形用户界面 , 如 Microsoft 的 Windows, Apple 的 Mac OS 和 Sun Microsystem 的 OpenWindows 等 . 利用计算机的图形能力产生的程序界面使得程序更加容易被使用。良好设计的图形用户界面可以使用户从负责的命令语言中解放出来。 一般来说,应用程序有以下的基本的组件(或者说是元素): 光标( pointer ):显示在屏幕上让用户移动以选择对象和命令的符号。通常显示为一个小的箭头。但是在文字处理的应用程序则是用象大写 I 一样的光标。 图标( icon ) / 图片( picture ):代表命令,文件或窗口的小图片

简单的Python GUI界面框架

与世无争的帅哥 提交于 2019-12-05 17:54:11
Python开发GUI界面, 可以使用pyQT或者wxpython。 不过不论pyQT还是wxpython都需要比较多的学习成本。Python工程往往是用于快速开发的,有些时候引入pyQT,wxpython会让python工程变得比较复杂。 在很多情况下,python开发的都是命令行程序,用户很多时候抱怨最大的不是程序的输出,而是命令行的参数需要记忆。所以很多时候,python命令行程序并不需要整个程序都是GUI,只需要命令行输入替换为GUI, 程序的设置替换为GUI就可以了。 比如说,git命令功能很强大,对于初学者而言,最大的困难就在于git命令如何写,git命令执行结果在terminal中输出,大部分人还是勉强可以接受的。 这里介绍一个Python框架,可以快速的设计出GUI。可以说是目前最简单的python GUI开发框架。 pyFormUI基于wxpython设计的,不过对wxpython进行了完全封装。使用时不用了解wxpython. 安装pyFormUI 1.下载pyFormUI pyFormUI在: https://github.com/jeffchau1979/pyFormUI git clone https://github.com/jeffchau1979/pyFormUI.git 2.安装wxpython sudo apt-get install

[转载]为什么用Java开发桌面程序的比较少

馋奶兔 提交于 2019-12-04 18:24:23
这个是本人这几天用javafx开发桌面程序时候想到的,因为虽然javafx比C#之类的确实坑多不少,但是习惯了之后也还行,而且它的一次编译、各处使用真的深得我心。但为什么不流行呢: 作者:bell 来源:https://www.zhihu.com/question/19711713 Java的桌面程序并不少,其中最为知名的莫过于Eclipse。在Linux和Mac下,Java程序的比例远高于Windows下。 不过,“Java不适合写桌面应用”的说法有一定道理,论调的主要背景是供Windows下使用的企业桌面应用的开发。由于一些历史和定位的原因,对于这种GUI程序的需求,Java的优势不明显,劣势比较明显。 这事还得从Java的传统,“跨平台一致性”说起。 在写后台逻辑的时候,跨平台是好东西。很多公司都是在Windows下开发,在Linux下部署,方便。 但涉及到GUI的时候,跨平台就成了个“看上去很美”的东西。理论上,我写个窗口,在Windows和Mac下都一样能用,那是多么美好的事啊。但实际上,每个平台提供的GUI控件多多少少有点差别,一坚持跨平台,麻烦就来了,该支持多少控件,怎么支持呢。 一开始,Java的思路是:那简单啊,有原生控件干嘛不用,至于不跨平台的,就不支持呗,又坚持了原则,又回避了问题。这一代的gui库,awt,就此诞生。

GUI设计

匿名 (未验证) 提交于 2019-12-03 00:36:02
两点注意 : * uigetfile的语法: uigetfilt('filetype','对话框名称’,文件位置) * 读取图像时,注意 [filename,pathname] 的次序两次不同 global im [filename,pathname]=uigetfile({'*.jpg';'*.bmp';'*.tif'},'选择图片') str=[pathname,filename]; im=imread(str); axes(handles.axes1); imshow(im) global im im1 = imcrop(); axes(handles.axes2); imshow(im1) 双击裁剪部分可以得到裁剪的图像 im2 = im(end:-1:1,:,:); %垂直旋转 im3 = im(:,end:-1:1,:); %水平旋转 im4 = im(end:-1:1,end:-1:1,:); %对角旋转 clc,clear,close all 文章来源: GUI设计

touchgfx -- Integration

匿名 (未验证) 提交于 2019-12-03 00:17:01
将UI连接到系统 在大多数应用程序中,UI需要以某种方式连接到系统的其余部分,并发送和接收数据。 这可以与硬件外围设备(传感器数据,A / D转换,串行通信等)接口,也可以与其他软件模块接口。 本文介绍了实现此连接的推荐解决方案。 第一种方法是“快速且肮脏的”方法,主要用于原型制作,而第二种方法是在架构上合理地将UI与现实应用程序中的其余组件连接的一种方法。 在本文的最后,我们链接到使用这两种方法的示例。 模型类 所有TouchGFX应用程序都有一个Model类,该类除了存储UI状态信息之外,还旨在充当您周围系统的接口。 这样,我们既指硬件外围设备,也指系统中的其他OS任务。 通常,访问各个View类中的其他软件模块或硬件不是一个好的设计。 Model类非常适合放置任何此类接口代码,因为: Model类具有tick()函数,该函数会在每帧中自动调用,并且可以实现为查找其他子模块中的事件并对事件做出反应。 Model类具有指向您当前活动的Presenter的指针,以便能够将传入事件通知UI。 硬件接口 方法1:直接从GUI任务采样 与硬件接口的最佳方法取决于您需要采样的频率,采样的时间和时间的紧迫性。 如果您在这些方面的要求比较宽松,那么最简单的方法就是直接在 Model::tick 功能中 。 如果采样发生的频率低于帧速率(通常在60Hz左右),则可以添加一个计数器

Roblox GUI 简介

匿名 (未验证) 提交于 2019-12-03 00:06:01
界面文档 界面入门介绍 界面动画介绍 StarterGui 本类是一个 Service ,单例,可以通过 game:GetService("StarterGui") 来获取。 作为容器。可以放置一些界面在它下面,当玩家进入游戏中的时候,它的子节点都会被复制到玩家的PlayerGui下。 作为接口。它可以访问 CoreGui 可以通过它来对游戏中的一些默认界面进行设置。可以通过 SetCore 发送提示信息等等 PlayerGui 玩家所能看到的界面都会在PlayerGui下。StarterGui里面的内容都会自动复制到这个下面。所以StarterGui只适合放一下初始界面,不应该放置大量界面。如果 Players.CharaterAutoLoads 设置成false,则界面也不会自动加载,需要等到 Player:LoadCharater 调用之后才会加载。 获取方法: game:GetService('Players').LocalPlayer:WaitForChild('PlayerGui') ScreenGui 主要的界面控件容器。只有当它是PlayerGui的子节点时,才会被展示。也就是说可以把它的父节点修改,即可以不显示它。 IgnoreGuiInset 可以设置忽略系统菜单的位置。不设置的话,整个界面实际上会往下偏移一个系统菜单的位置。 SurfaceGui 实现3D界面

matlab脚本 gui设计基础

匿名 (未验证) 提交于 2019-12-02 23:56:01
h0 = figure('toolbar','none',... 'position',[200 150 450 250],... 'name','gui_mytry',... 'numbertitle','off'); x = 0:0.5:2*pi; y = sin(x); h = plot (x,y); grid on; hm = uicontrol(h0,'style','text',... 'string','绘图函数',... 'position',[380 180 50 20]); hm =uicontrol(h0,'style','popupmenu',... 'string',... 'sin(x)|cos(x)|sin(x)+cos(x)',... 'position',[380 150 50 20]); set(hm,'value',1) my_callback = [... 'v=get(hm,"value");,',... 'switch v,',... 'case 1,',... 'delete(h),',... 'y = sin(x);,',... 'h = plot(x,y);,',... 'grid on,'... 'case 1,',... 'delete(h),',... 'y = sin(x);,',... 'h = plot(x,y);,',

PyQt编写Python GUI程序,舍弃Tkinter,来玩易语言吧!

匿名 (未验证) 提交于 2019-12-02 22:56:40
许多Python学习者在学习如何创建一个 GUI 应用的时候都感到十分的困难。其中最重要的原因是,他们不知道应该从何下手。大多数的教程都只有文字,但事实上仅仅依靠文字很难学会 GUI 编程,因为 GUI 应用大多数都是基于视觉上的。 这就是我们即将完成的东西: 这是一个简单的 GUI 应用,根据输入的价格(price)和税率(tax rate),计算出最终的价格(final price)。 大多数的教程都试图直接通过Python代码来对 GUI 应用进行布局,但是这样做实在是很费劲。我们将要做的是利用优秀的 QT Designer 工具来对我们的应用进行布局。 不要再用代码来设计界面了。所有的东西都将通过图形界面来搞定。 前提 如果你已经接受了我的建议并且安装了 Anaconda,你应该已经安装好了 PyQt4。如果没有的话,你需要从这里先下载它。 着手 打开 QT Designer。在弹出的窗口中,选择 Main Window,这样它会给你一个空白的画板。 接下来在左侧选择Text Edit: 将Text Edit 拖动到主窗口: 红圈框起来的部分就是定义这个对象的名字的地方。这个名字将是我们通过 Python 代码调用到这个对象的变量名。 我将它取名为price_box,因为我们会在这里输入价格。然后我们需要给这个输入框添加一个 label(按钮)