实验一:图形用户界面设计
- 格式:doc
- 大小:308.50 KB
- 文档页数:4
图形用户接口一、实验目的·了解嵌入式系统图形界面的基本编程方法·学习图形库的制作二、原理概述2.1 Frame Buffer显示屏的整个显示区域,在系统内会有一段存储空间与之对应。
通过改变该存储空间的内容达到改变显示信息的目的。
该存储空间被称为Frame Buffer,或显存。
显示屏上的每个点都与frame buffer里的一个像素对应。
显示屏可以用单色或彩色来显示。
单色用1位来表示,彩色有2、4、8、16、24、32等位色。
显示屏还有单屏模式和双屏模式。
2.2 Frame Buffer与色彩计算机反映自然界的色彩是通过RGB值来表示的。
像素的RGB值可以直接从Frame Buffer里得到,或是从调色板间接得到。
实验室的显示器为16位色,因此Frame Buffer里的每个单元为16位:高5位为R,中间6位为G,低5位为B。
2.3 LCD控制器LCD控制器是Frame Buffer与显示屏之间的一个中间部件,负责从Frame Buffer中提取数据,进行处理,并传输到显示屏上。
本实验用到的开发板处理器PXA270集成了LCD控制器,实验中用到的显示屏是16位的TFT LCD,像素分辨率为 640×480。
三、实验内容3.1Frame Buffer操作Frame Buffer的设备是/dev/fb。
Struct fb_var_screeninfo vinfo;Fd = open("/dev/fb",O_RDWR)ioctl(fd,FBIOGET_VSCREENINFO,&vinfo)来获取它的可变参数,其中包括显示器的色位,分辨率等信息(vinfo.bits_per_pixel、vinfo.xres、vinfo.yres)。
获得缓冲区首地址,调用方式为:unsignedchar*fbp=0;fbp=(unsigned char*)mmap(0,sreensize,\PROT_READ|PROT_WRITE,MAP_SHARED,fd,0);将显示缓冲区清零,memset(fbp,0,screensize),即可实现清屏。
计算机图形学实验一标准化工作室编码[XX968T-XX89628-XJ668-XT689N]实验一二维基本图元的生成与填充实验目的1.了解并掌握二维基本图元的生成算法与填充算法。
2.实现直线生成的DDA算法、中点算法和Bresenham算法。
3.实现圆和椭圆生成的DDA和中点算法, 对几种算法的优缺点有感性认识。
二. 实验内容和要求1.选择自己熟悉的任何编程语言, 建议使用VC++。
2.创建良好的用户界面,包括菜单,参数输入区域和图形显示区域。
3.实现生成直线的DDA算法、中点算法和Bresenham算法。
4.实现圆弧生成的中点算法。
5.实现多边形生成的常用算法, 如扫描线算法,边缘填充算法。
6.实现一般连通区域的基于扫描线的种子填充算法。
7.将生成算法以菜单或按钮形式集成到用户界面上。
8.直线与圆的坐标参数可以用鼠标或键盘输入。
6. 可以实现任何情形的直线和圆的生成。
实验报告1.用户界面的设计思想和框图。
2.各种实现算法的算法思想。
3.算法验证例子。
4.上交源程序。
直线生成程序设计的步骤如下:为编程实现上述算法,本程序利用最基本的绘制元素(如点、直线等),绘制图形。
如图1-1所示,为程序运行主界面,通过选择菜单及下拉菜单的各功能项分别完成各种对应算法的图形绘制。
图1-1 基本图形生成的程序运行界面2.创建工程名称为“基本图形的生成”单文档应用程序框架(1)启动VC,选择“文件”|“新建”菜单命令,并在弹出的新建对话框中单击“工程”标签。
(2)选择MFC AppWizard(exe),在“工程名称”编辑框中输入“基本图形的生成”作为工程名称,单击“确定”按钮,出现Step 1对话框。
(3)选择“单个文档”选项,单击“下一个”按钮,出现Step 2对话框。
(4)接受默认选项,单击“下一个”按钮,在出现的Step 3~Step 5对话框中,接受默认选项,单击“下一个”按钮。
(5)在Step 6对话框中单击“完成”按钮,即完成“基本图形的生成”应用程序的所有选项,随后出现工程信息对话框(记录以上步骤各选项选择情况),如图1-2所示,单击“确定”按钮,完成应用程序框架的创建。
python图形用户界面实验报告本实验主要是介绍Python图形用户界面(GUI)的基本概念和使用方法,包括使用Python 中的Tkinter模块创建GUI应用程序的基本结构、常用控件和事件处理方式。
一、实验目的1.掌握Python图形用户界面(GUI)的基本概念和使用方法。
2.学习使用Python中的Tkinter模块创建GUI应用程序。
3.了解在Tkinter中使用控件和事件处理方式。
二、实验内容1.创建基本的GUI应用程序Python的Tkinter模块提供了一系列GUI控件,如Label、Button、Entry、Canvas、Menu等。
下面我们将介绍如何使用Tkinter创建一个基本的GUI应用程序。
代码如下:```from tkinter import *#创建主窗口root = Tk()#设置窗口标题root.title("我的第一个GUI程序")#设置窗口大小(宽x高)root.geometry('400x300')# 创建一个Label控件label = Label(root, text="欢迎来到Python世界!")# 将Label控件添加到主窗口label.pack()#进入消息循环root.mainloop()```上述代码中,我们首先导入了Tkinter模块,然后创建了一个名为root的主窗口。
接下来,我们设置了窗口的标题和大小,并创建了一个Label(标签)控件,文本为“欢迎来到Python 世界!”并将其添加到主窗口。
最后,我们调用root.mainloop()方法以便程序能够执行GUI循环。
2.GUI控件的使用下面介绍一些常用的Tkinter控件的用法。
其中,控件的属性和方法的详细说明可参考Python 官方文档或其它相关资料。
Label(标签)控件Label控件用来显示文本或图像。
如下是一个Label控件的例子:```label = Label(root, text="Hello, world!")label.pack()```Button(按钮)控件Button控件用来响应用户点击事件。
《⼈机交互技术》实验⼀《⼈机交互技术》实验报告软件091班王晶092543实验⼀图形⽤户界⾯的设计⼀实验⽬的和要求1) 熟悉图形⽤户界⾯的设计原则2)利⽤⼀种设计⼯具完成图形化的⽤户界⾯设计⼆预备知识图形⽤户界⾯⼜称为WIMP界⾯,由窗⼝(windows)、图标(icons)、菜单(menu)、指点设备(pointing device)四位⼀体,形成桌⾯(desktop) ,如图所⽰。
图形⽤户界⾯是当前⽤户界⾯的主流,⼴泛应⽤于各档台式微机和图形⼯作站。
图形⽤户界⾯的共同特点是以窗⼝管理系统为核⼼,使⽤键盘和⿏标器作为输⼊设备。
窗⼝管理系统除了基于可重叠多窗⼝管理技术外,⼴泛采⽤的另⼀核⼼技术是事件驱动(event-driven)技术。
WIMP界⾯可看作是第⼆代⼈机界⾯,是基于图形⽅式的⼈机界⾯。
在WIMP界⾯中,⼈被称为⽤户,⼈机通过对话进⾏⼯作。
⽤户只能使⽤⼿这⼀种交互通道输⼊信息,通过视觉通道获取信息。
在WIMP界⾯中,界⾯的输出可以为静态或动态的⼆维图形或图像等信息。
这种⽅式能同时输出不同种类的信息,⽤户也可以在⼏个⼯作环境中切换⽽不丢失⼏个⼯作之间的联系,通过菜单可以执⾏控制型和对话型任务。
由于引⼊了图标、按钮和滚动条技术,⼤⼤减少键盘输⼊,提⾼了交互效率。
基于⿏标和图形⽤户界⾯的交互技术极⼤地推动了计算机技术的普及。
(1)图形⽤户界⾯的三个重要思想1)桌⾯隐喻(desktop metaphor)指在⽤户界⾯中⽤⼈们熟悉的桌⾯上的图例清楚地表⽰计算机可以处理的能⼒。
隐喻的表现⽅法:静态图标、动画、视频2)所见即所得(What Y ou See Is What Y ou Get,WYSIWYG)显⽰的⽤户交互⾏为与应⽤程序最终产⽣的结果是⼀致的。
3)直接操纵(direct manipulation)直接操纵是指可以把操作的对象、属性、关系显式地表⽰出来,⽤光笔、⿏标、触摸屏或数据⼿套等指点设备直接从屏幕上获取形象化命令与数据的过程。
Java程序设计实用教程(第4版)习题解答与实验指导叶核亚编著2013年11月目录“Java程序设计”课程教学要求 (1)第1章Java概述 (3)第2章Java语言基础 (5)第3章类的封装、继承和多态 (22)第4章接口、内部类和Java API基础 (37)第5章异常处理 (42)第6章图形用户界面 (44)第7章多线程 (49)第8章输入/输出流和文件操作 (51)“Java程序设计”课程教学要求1. 课程性质、目的和任务程序设计是高等学校计算机学科及电子信息学科各专业本科的核心专业基础课程,是培养学生软件设计能力的重要课程。
在计算机学科的本科教学中,起着非常重要的作用。
“Java程序设计”是计算机科学与技术专业本科的专业基础限选课,开设本课程的目的是:进行程序设计和面向对象方法的基础训练;使用Java编程技术,设计解决操作系统、网络通信、数据库等多种实际问题的应用程序。
本课程通过全面、系统地介绍Java语言的基础知识、运行机制、多种编程方法和技术,使学生理解和掌握面向对象的程序设计方法,理解和掌握网络程序的特点和设计方法,建立起牢固扎实的理论基础,培养综合应用程序的设计能力。
本课程的先修课程包括:C/C++程序设计I、C/C++程序设计II、数据结构、操作系统、计算机网络、数据库原理等。
2. 教学基本要求本课程的基本要求如下。
①了解Java语言特点,理解Java Application应用程序的运行原理和方法。
掌握在JDK 环境中编译和运行程序的操作,熟悉在MyEclipse集成开发环境中,编辑、编译、运行和调试程序的操作。
②掌握Java语言中语句、数组、引用类型等基本语法成分的使用方法,通过类、接口、内嵌类型、包、异常处理等机制表达和实现面向对象程序设计思想。
③掌握Java的多种实用技术,包括图形用户界面、多线程、文件操作和流、使用URL 和Socket进行网络通信等。
④熟悉Java JDBC数据库应用的设计方法。
实验一 Java实验环境的建立一、实验目的1.掌握Java编程环境的搭建过程;2.掌握Jcreator pro软件的使用方法;3.能使用Java doc文档。
二、实验内容1.下载并安装JDK1.6,配置JDK环境变量;2.下载Javadoc压缩包并解压在JDK安装路径下;3.下载Jcreator pro 4.0并安装和配置使用环境;4.使用实验环境运行书中实例代码,在屏幕上输出“Hello Java”字符串。
①Java application程序代码如下:public class HelloJava{public static void main(String args[]){System.out.println("Hello Java!");}}②Java applet程序代码如下:import java.awt.*;public class Hello extends java.applet.Applet{public void paint(Graphics g){g.drawString("Hello!",30,30);}}三、试验要求1、预习试验内容并写出上机报告。
2、实验中出现的问题及实验体会。
实验二 Java语言程序设计训练一、实验目的:1.输入、输出操作实现原理和方法2.掌握程序流程控制的实现方法3.掌握数组的定义和操作方法二、实验内容1.计算 Result=1!+2!+3!+ (10)2.计算1---50之间所有素数的和。
3. 产生10个100之内的随机整数输出,并把这10个数按从小到大的顺序输出。
4. 随机产生20个50~100间的整数,输出这20个数并找出最大数及最小数输出。
5.试编写程序,实现求几何形状(长方形、正方形、圆形)的周长、面积。
(可任选其一)6.验证书中的例题。
三、试验要求1、预习试验内容并写出上机报告。
2、实验中出现的问题及实验体会。
实验报告□实践报告□课程名称:Java语言程序设计实验、实践名称:Java语言基础、数组和字符串编程、Java面向对象程序设计、Java异常处理多线程编程、图形用户界面编程实验、实践地点:致向楼301专业班级:软件1531 学号:2015006446学生姓名:关玉芬指导教师:相洁2017 年1月8日else System.out.print("输出结果为"+i*4);x.close();}}6. package shiyan;public class a6 {public static void main(String[] args) {int i,j=0;for(i=1900;i<=2100;i++){if((i%4==0)&&(i%100!=0)||(i%400==0)){ j++;if(j%5==0)System.out.println(i);else{System.out.print(i);System.out.print(" ");}}}}} 五、实验结果1.2.3.4.5.6.六、讨论、心得初步掌握了Eclipse集成开发环境。
掌握Java 基本数据类型、运算符与表达式、数组的使用方法,语法结构,掌握顺序结构、选择结构和循环结构语法的程序设计方法。
、对JA V A程序设计有初步的了解System.out.println("字符串的单词数为"+num);sr.close();}}五、实验结果1..2.3.六、实验心得通过本次实验掌握数组的声明、分配空间及初始化;理解多维数组(重点掌握二维);掌握String 类的特点及常用方法的使用;掌握StringBuffer 类的特点及常用方法的使用;掌握String 类和StringBuffer 类的区别;掌握equal 方法与==的区别;但是本次练习中,我也出现了一些错误,是由于知识上的失误和不小心犯下的低级错误,但是我努力改正。
Java编程基础实验报告编制教师唐春兰审定代伟(适用于计算机科学学院专业学生)2016至2017学年第一学期计算机科学学院实验名称:Java语言基础指导教师:唐春兰实验仪器:计算机实验日期:2016 年12 月2 日实验地点:第三实验楼209 实验目的:1、了解Java 的数据类型;2、掌握各种变量的声明方式;3、理解运算符的优先级;4、掌握JAVA基本数据类型、运算符与表达式、数组的使用方法;5、理解JAVA程序语法结构,掌握顺序结构、选择结构和循环结构语法的程序设计方法;6、通过以上内容,掌握JAVA语言的编程规则。
实验内容及基本要求:1、读下列程序,理解不同数据类型变量的声明,写出其输出结果并上机运行验证。
public class SHIYAN2_1 {public static void main(String[] args) {byte b=0x55;short s=0x55ff;int i=1000000;long l=0xffffL;char c='a';float f=0.23F;double d=0.7E-3;boolean B=true;String S="这是字符串类数据类型";System.out.println("字节型变量 b = "+b);System.out.println("短整型变量 s = "+s);System.out.println(" 整型变量 i = "+i);System.out.println("长整型变量 l = "+l);System.out.println("字符型变量 c = "+c);System.out.println("浮点型变量 f = "+f);System.out.println("双精度变量 d = "+d);System.out.println("布尔型变量 B = "+B);System.out.println("字符串类对象 S = "+S);}}2、分析下列程序,了解变量的使用范围,修改程序使之能成功运行。
实验一图形用户界面设计
一实验目的和要求
1)熟悉图形用户界面的设计原则
遵循用户友好原则、一致性原则、帮助和提示等原则设计用户界面。
2)利用一种设计工具完成图形化的用户界面设计
二实验内容与步骤
(一)实验内容
利用常用的设计工具(UI界面设计工具GUI Design Studio)完成一个通用图形用户界面设计,要遵循界面设计的一般原则(一致性、快捷方式、提供错误处理),注意颜色的使用,学会图标、按钮、屏幕布局、菜单和对话框的设计。
软件的界面如同人的脸一样,软件界面的好坏决定了用户对软件的第一印象。
设计好的界面能够引导用户自己完成相应的操作,起到引导作用。
设计合理的界面能给用户带来轻松愉悦的感受。
一些专家指出:对于用户,人机界面就是系统本身。
这充分说明了软件界面设计的重要性。
请完成各自的系统用户界面的设计。
(二)实验步骤
1.设计多个对话框,完成填表输入界面的设计,合理使用图标、按钮、颜色;
2.设计不同形式的菜单,完成对不同对话框的调用;
3.提供简单的错误处理、联机帮助。
GUI Design Studio主界面
三界面示例1、登录界面
2、主界面
3、聊天界面
4、QQ空间界面
四实验总结
1.界面要具有一致性、常用操作要有快捷方式、提供简单的错误处理、对操作人员的重要操作要有信息反馈、操作可逆、设计良好的联机帮助、合理划分并高效地使用显示屏、保证信息显示方式与数据输入方式的协调一致。
2.颜色是一种有效的强化手段,同时具有美学价值。
使用颜色时应注意如下几点:限制同时显示的颜色数;画面中活动对象的颜色应鲜明,而非活动对象应暗淡;尽量避免不相容的颜色放在一起,如黄与蓝,红与绿等,除非作对比时用;若用颜色表示某种信息或对象属性,要使用户理解这种表示,并尽量采用通用的表示规则。
3.图标是可视地表示实体信息的简洁、抽象的符号。
图标设计是方寸艺术,需要在很小的范围内表现出图标的内涵。
设计图标时应该着重考虑视觉冲击力,要使用简单的颜色,利用眼镜对色彩和网点的空间混合效果,做出精彩图标。
1)设计按钮应该具有交互性,应该有3到6种状态效果(点击时的状态、鼠标放在上面但未点击的状态、点击前鼠标未放在上面时的状态、点击后鼠标未放在上面时的状态、不能点击时的状态、独立自动变化的状态),按钮应具备简洁的图示效果,应能够让使用者产生功能上的关联反应。
属于一个群组的按钮应该风格统一,功能差异大的按钮应该有所区别。
2)设计屏幕布局(Layout)时应该使各功能区重点突出,应遵循如下几条原则:平衡原则、预期原则、经济原则、顺序原则、规则化。
3)菜单在图形界面的应用程序中使用得非常普遍,是软件界面设计的一个重要组成方面,描述了一个软件的大致功能和风格。
菜单中的选项在功能上与按钮相当,一般具有下列一种或几种类型的选项:命令项、菜单项和窗口项。
菜单的结构一般有单一菜单、线状序列菜单、树状结构菜单、网状结构菜单等,其中树状结构菜单是最常见的结构。
设计菜单界面时应注意一般性原则:功能组织菜单,合理分类,并力求简短,前后一致;合理组织菜单界面的结构与层次;按一定的规则对菜单项进行排序;菜单选项的标题要力求文字简短、含义明确,并且最好以关键词开始;常用选项要设置快捷键;充分利用菜单选项的使能与禁止、可见与隐藏属性;使用弹出式菜单。
4)在处理大量相关数据的场合下,需要输入一系列的数据,这时填表输入界面是最理想的数据输入界面。
在设计填表输入界面时应遵循的原则:一致性;有含义的表格标题;使用易于理解的指导性说明文字;栏目按逻辑分组排序;表格的组织结构和用户任务相一致;光标移动方便;出错提示;提供帮助;表格显示应美观、清楚,避免过分拥挤。