文档库 最新最全的文档下载
当前位置:文档库 › Matlab图形用户界面的制作

Matlab图形用户界面的制作

Matlab图形用户界面的制作
Matlab图形用户界面的制作

第18卷第4期2005年8月

常州工学院学报

J our nal of Cha ngzhou I nstitute of Tec h nology

V ol.18 N o.4

A ug.2005

收稿日期:2005204201Matla b图形用户界面的制作

陈德伟

(常州工学院电子信息与电气工程学院,江苏常州213002)

摘要:介绍了在Matla b平台下开发图形用户界面的方法,总结了开发图形用户界面的一般原

则和步骤,给出了常用的创建菜单和各类控件的命令,详细说明了这些命令的使用方法,最后给出

了两个使用Matla b创建图形用户界面的实际例子。

关键词:Matla b;图形用户界面

中图分类号:TP39 文献标识码:A文章编号:1671-0436(2005)04-0007-05

 

MA TL AB语言是当今国际上科学界最具影响力、也是最有活力的软件。它起源于矩阵运算,并已经发展成一种高度集成的计算机语言,它提供了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、便捷的与其他程序和语言接口的功能。科研工作者选择Matla b就在于利用它优秀的数值计算能力,然而由于Matla b属于解释性语言,不能够生成脱立于Matla b平台的可执行文件,程序的使用者常常迷茫于大量的程序代码而不知所措,不知道如何修改输入参数获得不同的分析结果。因此有必要开发一种运行于Matla b平台下的图形用户界面(GU I:Grap hical User I nterf aces),既保持Matla b优秀的数值处理能力,又提供良好的人机对话窗口,给科研分析设计带来更大的灵活性。

GU I是由窗口、按键、菜单、文字说明等对象构成的一个用户界面,用户通过一定的方法,选择、激活这些图形对象,实现计算、绘图等功能。一个好的GU I不仅有利于用户快速掌握程序的操作流程,有效地使用程序,也有利于开发者展示Matla b平台下的开发技术。目前已有大量书籍介绍了Matla b平台下GU I的设计,但大都没有将基础知识与实例进行有机的结合,本文通过衍射光栅分析软件的创建实例,全面、系统地介绍了Matla b下GU I的开发过程,本文只介绍GU I的开发过程,各类命令的详细使用方法参阅参考文献[1]-[3]。

1 Matlab中GUI的设计方法

优秀GU I的开发原则应使图形界面窗口具有简洁性、一致性和熟悉性,按照以上设计原则,本衍射光栅分析软件在左上窗口放置光栅模型,在右上窗口放置光栅参数输入对话框,在界面的下面放置分析结果显示窗口。

111 菜单项的构建

首先新建一个“3.m”文件,在文件中用命令“Figure”创建一个新的图形界面窗口,创建的图形界面窗口会自动产生菜单项、工具栏,可以根据参数的选择来决定是否显示菜单项和工具栏,这里选择菜单项而不选择工具栏,因此将f igure的参数“me nuba r”设为“f igure”,将“t oolba r”设为“none”,即: ( set(0,′def aultfigurep osition′,[11284800600]);figure(′menubar′,′figure′,′toolbar′,′none′);

第一句设置图形界面窗口的位置和大小,第二句执行窗口的绘制。显示结果如图1所示,工具栏被

常州工学院学报隐去而只留下菜单项,Matla b 语言自动产生的菜单项具有相当多的功能,还包括详尽的帮组系统。然而对于需要构建的衍射光栅分析软件,一些功能将不会被用到,需要将这些功能菜单(比如View 菜单项)隐去。只需在命令“f igure ”之后执行如下命令即可:

( set (f indall (gcf ),′ha ndlevisibilit y ′,′on ′,′serializa ble ′,′on ′);set (f indobj (gcf ,′la bel ′,′

&View ′),′visible ′,′off ′

);第一句命令将图形界面窗口里面的所有控件可被改写,第二句改写菜单“View ”的属性,执行结果如图2所示。上面是改写菜单的“visible ”属性,它还有一个“la bel ”属性,修改这个属性可以修改菜单显

示文字,例如“set (f i ndobj (gcf ,′la bel ′,′&File ′),′la bel ′,′输出图像′

);”继续改写一些不被用到的菜单功能的“visible ”属性隐去这些菜单,同时改写剩下菜单的“la bel ”属性,将英文菜单项改写为中文显示,并用如下命令将图形界面窗口的名字改写:

( set (gcf ,′Num be r Title ′,′off ′,′na me ′,′衍射光栅分析软件′,…

( ′

Resize ′,′off ′,′Poi nter ′,′a rrow ′,′Next Plot ′,′a dd ′,′Wi ndowstyle ′,′nor mal ′

);图1 Matla b 语言自动产生的菜单项 图2 隐去View 菜单后的菜单项

Matla b 自动生成的菜单有一些不被用到,然而这里构建的软件具有一些特殊的功能,单用自动产生的菜单将不能完成,因此需要在现有菜单项中新建一些功能菜单,用命令“ui me nu ”可以实现,比如:

( menu _top 1=uimenu (gcf ,′label ′,′光栅形状′);menu _top 2=uimenu (gcf ,′label ′,′帮助系统′

);命令行中的“gcf ”表示在图形界面窗口内构建主菜单,菜单名为“光栅形状”,如果要在主菜单下构建子菜单,则要将“gcf ”换成相应主菜单的变量名,比如:

( me nu _recta ngula r =ui me nu (me nu _t op 1,′la bel ′

,′矩形光栅′

);( ui me nu (me nu _t op 2,′la bel ′,′帮助说明′,′Callbac k ′,′rcwa (102)′);图3 衍射光栅分析软件各菜单项

给光栅形状下面添加子菜单实现各种光栅形状的分析,最后的菜单项如图3所示。其中的“输出图

像”和“复制图像”是将Matla b 自动生成的“File ”和“Edit ”菜单的属性改变而成的。“光栅形状”和“帮助系统”是新建的菜单项。图3中显示已经将Matla b 自动产生的“View ”、“I nse rt ”、“Tools ”、“Wi n 2dow ”、“Help ”以及下面的子菜单隐藏,而“File ”和“Edit ”菜单下只留下“Save ”、“Save As...”、“Ex 2p ort...”、“Cop y Figure ”、“Cop y Op tions...”等子菜单,并将标签改写为中文显示,“光栅形状”下面设有各种能分析的光栅形状,任何时候都可以在里面添加其他的光栅形状,只需再添加相应的功能函数就能方便的实现软件的功能扩充。“帮助系统”不同于系统自动生成的“Help ”也是新建的菜单项,里面有软件的使用说明和版权信息。

1.2 数据输入区的实现

下面为各个菜单添加功能函数,Matla b 自动产生的菜单项具备完备的功能函数不用再添加或者改

82005年

第4期写,新建的各种“光栅形状”和“帮助信息”的功能函数需要另外添加,只需设置命令“ui me nu ”里的“Call 2back ”参数即可,默认为空,命令如下所示:

( ui me nu (me nu _recta ngula r ,′la bel ′,′一般分析′,′Callback ′,′rcwa (0)′

);命令行中先将子菜单的主菜单设为“me nu _recta ngula r ”,再将标签显示设为“一般分析”,最后调用函数“rcwa (0)”。所有的子菜单都可用这条命令添加调用功能函数,这些功能函数为子菜单附加特定的功能,比如“rcwa (0)”执行矩形光栅的一般分析,下面说明功能函数的实现过程。首先要有光栅参数输入对话窗口,由这个窗口设定光栅各参数的值,因此窗口内要有文本输入框,还需要对文本输入框说明的静态文本,命令“uicont rol ”可以方便的实现各种控件,比如:

( uicont rol (gcf ,′St yle ′,′text ′,′U nits ′,′p ixels ′,′Position ′,[40056012017],′St ri ng ′,′光栅周

期(微米)]′

);( gratingp e riod =uicont rol (gcf ,′St yle ′,′edit ′,′U nits ′,′p ixels ′,′St ri ng ′,′100′,′Position ′,[5205605017]);

( scala r met hod =uicont rol (gcf ,′Style ′,′checkbox ′,′Position ′,[6004858020],′St ring ′,′标量理论′

);( uicont rol (gcf ,′St yle ′,′p us hbutt on ′,′St ri ng ′,′计算′,′Position ′,[69046010020],′Call 2

back ′,′rcwa (101)′

);第一句实现静态文本“光栅周期(μm )]”的显示,第二句实现文本输入框,第三句实现“c heckbox ”,第四句实现按钮。分别由参数“Position ”设定其在图像界面窗口的位置,第二句中由参数“St ring ”给文本输入框设定初值,有时软件使用者可能会忘记输入参数值,设定初值可以防止不必要的执行错误。其他各种控件由“St ri ng ”设定文本显示内容。继续添加其他参数输入的控件,最后完成图如图4所示,图4中左边有一个光栅模型对照,这可以先用作图软件做好,然后再在程序中用命令“i mrea d ”和“i ms 2how ”调用显示出来,如:

( axes (′p osition ′,[0.010.760.4650.205]);bmp =imread (′rectangular.bmp ′

);imshow (bmp )

;图4 参数输入对话框的实现

第一句设定光栅模型的显示位置,第二句从文件“recta ngula r.bmp ”读出光栅模型图,然后由第三句在设定的位置显示出来。

113 结果显示区的实现

最后设计结果显示区,光栅分析会得到各级衍射光的衍射效率,如何在图形界面窗口将这些值显示出来?Matla b 语言强大的作图功能在这里显示出它独有的优势,它几乎可以完成目前现有作图软件所能做的任何数据图。对于显示衍射效率,可以简单的用命令“ba r ”或者命令“plot ”实现,前者作条形图,后者作曲线图。在图形界面窗口内作图,首先要用命令“subp lot ”设定在图形界面窗口哪个位置显示结果图:

subplot (′p osition ′,[0.10.150.800.5]);

9陈德伟:Matla b 图形用户界面的制作

常州工学院学报

然后再在设定的位置处用“ba r ”或者命令“plot ”作图,例如:( ba r (b ,eff icie ncy _disp lay ,0.75);lege nd (′scala r ′,′rcwa ′,2)

( title (′Results of scala r met hod a nd R C WA met hod ′,′f ontsize ′,14);

( xla bel (′Diff raction or de r ′,′f ontsize ′,14);yla bel (′Diff raction Eff icie ncy ′,′f ontsize ′,14);如果有多条曲线图或者有多个条形图可以命令“lege nd ”区分显示,由命令“title ”在顶部显示本次作图的名称,由“xla bel ”在底部显示x 坐标所表示的意义,由“yla bel ”在左边显示y 坐标所表示的意义,可以由参数“f ontsize ”设定显示的字体大小,效果图如图5所示。很多时候,软件使用者需要将分析结果用在编辑文档中,在编辑软件中不必再需要显示数据输入区而只要结果显示区,同时软件的图形处理工具已经被隐藏,软件使用者可能会重新对图像进行处理。所以有必要将结果显示区在新的窗口内打开,图5中的按钮“新窗口”就是实现这个目的:

( uicont rol (gcf ,′St yle ′,′p us hbutt on ′,′Position ′,[405206020],′St ri ng ′,′新窗口′,′Call 2

back ′,′a nalysis (0.1)′

);在“新窗口”的功能函数中,在绘制图形前使用命令“f igure ”而不是命令“subp lot ”就能实现在新窗口内画图,如图6所示。在新的窗口内,Matla b 自动生成的菜单项被完全显示出来,使用者可以自由设置显示内容

图5 结果显示区的效果图 图6 

结果显示区在新窗口显示效果图

图7 衍射光栅分析软件最后的总体效果图最后的总体效果图如图7所示。可以看到,数

据输入区和结果显示区合理地布局在图形界面窗口

内,光栅形状和分析结果一一对应。

2 图形界面窗口其他实例

在Matla b 平台下开发实用软件,可用于科研、

教学、测量等领域,充分利用Matla b 数值计算的强

大功能和程序编写的简洁快速。尽管它在运算速度

上比高级语言编写的同类程序慢一些,但它避开了

高级语言调试编译过程的复杂性,节省了程序开发

周期,因此仍然受到国内外科研单位的青睐。衍射

光栅分析软件是其中的一个例子,这里以四则运算测试软件来进一步说明Matla b 平台下开发实用软

件的强大功能,该软件的最终图形界面窗口如图8所示,可用于小学生数学测验,主要功能有加减乘除

012005年

第4

期图8 四则运算测试软件最后的总体效果图

的选择、

难易程度的选择、根据设置自

动出题、自动判断正误、测验结果统计

等,功能齐全,实现了通常只有高级语

言才能实现的图形界面。从以上两种

软件可以看出,运行于Matlab 平台下

的软件简单易用,运行结果准确快捷,

而且具有开放性的特点,另外还可以

方便地为软件增加新的功能。

3 结论

在Matla b 平台下利用其强大的

数值计算能力,开发各种实用软件,实

现了科学计算和美观界面的完美组

合,两个运行于Matla b 平台下的软件

从科研领域和教学领域说明了Mat 2

la b 下图形用户界面的实用价值。[参考文献]

[1]张志涌1精通Matlab 6.5版[M ]1北京:北京航空航天大学出版社,20031

[2]薛定宇1科学运算语言MA TL AB 5.3程序设计与应用[M ]1北京:清华大学出版社,20031

[3]刘志俭1MA TL AB 应用程序接口用户指南[M ]1北京:科学技术出版社,20001

Development of G raphical User Interfaces in Matlab

C H EN De 2w ei

(School of Mecha nical &Elect rical Engineering ,Cha ngzhou Institute of Technology ,Changzhou 213002)

Abstract :The met hod of developi ng grap hical user i nterf aces (GU I )i n Matla b is i nt roduced i n t his p ap er.Firstly ,t he p ri nciple a nd p rocess of develop me nt a re sum ma rize d ,a nd t he n t he con 2st ruction com ma nds of me nu ba r a nd cont rolling object a re give n i n details.Tw o exa mples of GU I a re give n at t he e nd of t his p ap e r.

K ey w ords :Matla b ;grap hical use r interf aces

责任编辑:张秀兰

11陈德伟:Matla b 图形用户界面的制作

实验一:图形用户界面设计

实验一图形用户界面设计 一实验目的和要求 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)在处理大量相关数据的场合下,需要输入一系列的数据,这时填表输入界面是最理想的数据输入界面。在设计填表输入界面时应遵循的原则:一致性;有含义的表格标题;使用易于理解的指导性说明文字;栏目按逻辑分组排序;表格的组织结构和用户任务相一致;光标移动方便;出错提示;提供帮助;表格显示应美观、清楚,避免过分拥挤。

实验三图形用户界面设计(汽院含答案)

实验三图形用户界面设计 实验目的 1.掌握Java语言中GUI编程的基本方法 2.掌握Java语言中AWT组件的基本用法 3.掌握Java语言中Swing组件的基本用法 实验导读 1.通过图形用户界面(GUI:Graphics User Interface),用户和程序之间可以方便地进行 交互。 AWT(Abstract Windowing Toolkit),中文译为抽象窗口工具包,是Java提供的用来建立和设置Java的图形用户界面的基本工具。AWT由Java中的包提供,里面包含了许多可用来建立与平台无关的图形用户界面(GUI)的类,这些类又被称为组件(components)。 Swing是一个用于开发Java应用程序用户界面的开发工具包。它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。 JDK写程序所有功能都是靠虚拟机去操作本地操作系统。比如window下,就是JDK 用windows API实现功能。而awt包中很多组件是组件自身去调用本地操作系统代码swing包中的组件采用的是调用本地虚拟机方法,由虚拟机再调用本地操作系统代码。意思就是中间多了一层,这样就加强了swing包的移植性,与本地关系不那强了。 图AWT常用组件继承关系图 Container为容器,是一个特殊的组件,该组件中可以通过add方法添加其他组件进来。 2.布局,容器中的组件的排放方式。常见的布局管理器: FlowLayout(流式布局管理器):从左到右的顺序排列。Panel默认的布局管理器。 BorderLayout(边界布局管理器):东,南,西,北,中。Frame默认的布局管理器。 GridLayout(网格布局管理器):规则的矩阵

图形图像用户界面设计

实习报告 课程名称多媒体实验 实习题目图形图像用户界面设计专业通信工程 班级通信(2)班 学号 学生姓名 实习成绩 指导教师吴娱 2011年5月

图形图像用户界面设计 一、实验目的 了解句柄图形的基本概念,掌握图形用户界面的基本设计方法。 二、实验要求 上机完成实验题目,独立完成实验报告。 三、实验内容 设计简单的图像用户界面。 四、实验步骤 1、在MATLAB的命令窗口(Command Window)中运行guide命令: 打开GUIDE界面,如下: 然后,选择空模板(Blank GUI),点击OK,即可打开GUIDE的设计界面,如下:

如下: 单下添加菜单项:“打开”、“保存”、“退出”。如下:

文件,所有的程序都是要写在这个M文件里面的。 在编程中,每一个鼠标动作都对应一个Callback函数。那么菜单项也是如此。 在界面上,单击鼠标右键选择“Property Inspector”,即可打 开属性窗口。当点击不同的控件时,其对应的属性都会在这里显示, 根据需要可以进行修改。最主要的属性莫过于Tag属性和String属 性。 设置当前的Figure窗口的Tag属性为:figure_pjimage,窗口的标

题(Name属性)为:图像处理实例。如下: 然后,点击工具栏的保存按钮。之后,点击工具栏的运行按钮(Run)。程序运行时的样子,是这样的: 文件下面的菜单项和快捷键我们都能看见,但是我们没有写程序,所以就算点也没有什么响应。还有如果不想设置快捷键,可以在Menu Editor中设置,只要把其选择为Ctrl+none就行了。这样的话,

图形用户界面设计

09次上机图形用户界面设计 1、(1)给程序添加注释,并执行。 建立数制转换对话框。 在左边输入一个十进制整数和2~16之间的数,单击“转换”按钮能在右边得到十进制数所对应的2~16进制字符串,单击“退出”按钮退出对话框。 hf=figure('Color',[0,1,1],'Position',[100,200,400,200],... 'Name','数制转换','NumberTitle','off','MenuBar','none'); uicontrol(hf,'Style','Text', 'Units','normalized',... 'Position',[0.05,0.8,0.45,0.1],'Horizontal','center',... 'String','输入框','Back',[0,1,1]); uicontrol(hf,'Style','Text','Position',[0.5,0.8,0.45,0.1],... 'Units','normalized','Horizontal','center',... 'String','输出框','Back',[0,1,1]); uicontrol(hf,'Style','Frame','Position',[0.04,0.33,0.45,0.45],... 'Units','normalized','Back',[1,1,0]); uicontrol(hf,'Style','Text','Position',[0.05,0.6,0.25,0.1],... 'Units','normalized','Horizontal','center',... 'String','十进制数','Back',[1,1,0]); uicontrol(hf,'Style','Text','Position',[0.05,0.4,0.25,0.1],... 'Units','normalized','Horizontal','center',... 'String','2~16进制','Back',[1,1,0]); he1=uicontrol(hf,'Style','Edit','Position',[0.25,0.6,0.2,0.1],... 'Units','normalized','Back',[0,1,0]); he2=uicontrol(hf,'Style','Edit','Position',[0.25,0.4,0.2,0.1],... 'Units','normalized','Back',[0,1,0]); uicontrol(hf,'Style','Frame','Position',[0.52,0.33,0.45,0.45],... 'Units','normalized','Back',[1,1,0]); ht=uicontrol(hf,'Style','Text','Position',[0.6,0.5,0.3,0.1],... 'Units','normalized','Horizontal','center','Back',[0,1,0]); COMM=['n=str2num(get(he1,''String''));',... 'b=str2num(get(he2,''String''));',... 'dec=trdec(n,b);','set(ht,''string'',dec);']; uicontrol(hf,'Style','Push','Position',[0.18,0.1,0.2,0.12],... 'String','转换','Units','normalized','Call',COMM); uicontrol(hf,'Style','Push','Position',[0.65,0.1,0.2,0.12],... 'String','退出','Units','normalized','Call','close(hf)'); 2、做一个带按钮的界面,当按动按钮时,在计算机声卡中播放一段音乐。(提示,找一个.wav 文件,简单起见可以在windows目录下找一个文件,将其放在当前工作目录下或搜索路径上,当按动“开始”按钮时调入该文件并播放,发声功能由sound函数完成,具体用法请查阅帮助信息)

图形用户界面的设计课案

人机交互基础教程 实验报告 实验题目:图形用户界面的设计 专业计算机科学与技术 学生姓名 班级学号 教师 指导单位计算机软件学院 日期

教师 评语教师签名: 年月日 成绩评定 备注

一、实验目的 (1)熟悉图形用户界面的设计原则 (2)利用一种设计工具完成图形化的用户界面设计 二、预备知识 图形用户界面又称为WIMP界面,由窗口(windows)、图标(icons)、菜单(menu)、指点设备(pointing device)四位一体,形成桌面(desktop) ,如图所示。 WIMP界面 用 户 手 眼 击键/指点 窗口、图标 菜单、文本 应用例程 图形用户界面是当前用户界面的主流,广泛应用于各档台式微机和图形工作站。图形用户界面的共同特点是以窗口管理系统为核心,使用键盘和鼠标器作为输入设备。窗口管理系统除了基于可重叠多窗口管理技术外,广泛采用的另一核心技术是事件驱动(event-driven)技术。 WIMP界面可看作是第二代人机界面,是基于图形方式的人机界面。在WIMP界面中,人被称为用户,人机通过对话进行工作。用户只能使用手这一种交互通道输入信息,通过视觉通道获取信息。在WIMP界面中,界面的输出可以为静态或动态的二维图形或图像等信息。

这种方式能同时输出不同种类的信息,用户也可以在几个工作环境中切换而不丢失几个工作之间的联系,通过菜单可以执行控制型和对话型任务。由于引入了图标、按钮和滚动条技术,大大减少键盘输入,提高了交互效率。基于鼠标和图形用户界面的交互技术极大地推动了计算机技术的普及。 (1)图形用户界面的三个重要思想 1)桌面隐喻(desktop metaphor) 指在用户界面中用人们熟悉的桌面上的图例清楚地表示计算机可以处理的能力。隐喻的表现方法:静态图标、动画、视频2)所见即所得(What You See Is What You Get,WYSIWYG) 显示的用户交互行为与应用程序最终产生的结果是一致的。 3)直接操纵(direct manipulation) 直接操纵是指可以把操作的对象、属性、关系显式地表示出来,用光笔、鼠标、触摸屏或数据手套等指点设备直接从屏幕上获取形象化命令与数据的过程。直接操纵的对象是命令、数据或是对数据的某种操作。 (2)设计图形用户界面的原则 1) 一般性原则:界面要具有一致性、常用操作要有快捷方式、提供简单的错误处理、对操作人员的重要操作要有信息反馈、操作可逆、设计良好的联机帮助、合理划分并高效地使用显示屏、保证信息显示方式与数据输入方式的协调一致 2) 颜色的使用:颜色是一种有效的强化手段,同时具有美学价

基于matlab的可视化界面制作

MATLAB可视化设界面计(上) 一个可发布的应用程序通常都需要具备一个友好的图形界面(比如,我们开课时或给学生上课而使用课件时,我们一般就会用到可视化界面)。这样用户不需要知道应用程序究竟是怎样执行各种命令的, 而只需要了解可见界面组件的使用方法用户也不需要知道命令是如何执行, 只要通过与界面交互就可以使指定行为得以正确执行。MA TLAB可视化界面的设计, 一般有两种方法, 一是直接通过编辑M脚本文件产生GUI(这个方法就是我们在前面学习过的如何编写、调用M文件), 二是通过MA TLAB图形用户界面开发环境GUIDE(Graphical User Interface Development Environment)来形成相应文件。这里只讲述在GUIDE环境中利用控件实现可视化界面功能, 不探讨直接通过编辑脚本文件实现可视化界面的方法。 MA TLAB软件GUIDE为用户提供了一个方便高效的集成环境, 所有GUI支持的用户控件都集成在这个环境中, 并提供界面外观、属性和行为响应方式的设置方法。GUIDE将用户保存设计好的GUI界面保存在一个FIG资源文件中, 同时自动生成包含GUI初始化和组件界面布局控制代码的M文件, 为实现回调函数提供了一个参考框架。 下面以一个具体实例来说明GUIDE的开发使用以下所讲解的关于各控件的使用, 我们以MA TLAB7.0版本为调试环境, 如果版本的环境和版本略有不同,但基本思想和方法一致。为了方便大家学习,此处提供二个版本(即文字和视频,文字的即为下面的叙述,视频请点击此处。) 实例要完成的功能如下: 首先运行M文件后,出现一个主画面

实验九Java图形用户界面设计1

实验九Java图形用户界面设计(1) 一实验目的 (1)掌握Frame与面板的使用 (2)布局管理器的使用 (3)布局管理器的使用 (4)边界风格的使用 (5)掌握简单Java事件的处理 二实验内容 1、创建并显示一个标题为“My Frame”,背景色为白色,大小为1000×1000的框架。在该框架中放置八个按钮,按钮的标题分别为“按钮1”、……“按钮8”。采用FlowLayout布局管理器。 程序: import java.awt.*; import javax.swing.*; public class Con1{ private JFrame f; private JButton b1,b2,b3,b4,b5,b6,b7,b8; public static void main(String args[]){ Con1 c=new Con1(); c.go(); } public void go(){

f=new JFrame("My Frame"); Container con=f.getContentPane(); con.setLayout(new FlowLayout()); con.setBackground(Color.white); con.setLayout(new FlowLayout(FlowLayout.RIGHT,920,50)); b1=new JButton("按键1"); b2=new JButton("按键2"); b3=new JButton("按键3"); b4=new JButton("按键4"); b5=new JButton("按键5"); b6=new JButton("按键6"); b7=new JButton("按键7"); b8=new JButton("按键8"); con.add(b1); c on.add(b2); c on.add(b3); c on.add(b4); con.add(b5); c on.add(b6); c on.add(b7); c on.add(b8); f.setSize(1000,1000); f.setVisible(true); } } 结果:

实验6 图形用户界面设计

实验6. 图形用户界面设计 一、 实验目的 1. 掌握图形对象属性的基本操作; 2. 掌握菜单及对话框设计、建立控件对象的方法。 二、 实验环境 1. 计算机 2. matlab7.1 三、 实验说明 1. 正确操作,认真观察; 2. 实验学时:2学时; 3. 学会使用help ; 4. 保存整理实验结果,提交实验报告。 四、 实验内容 1.设计如教材P374 图1所示的菜单,并在此基础上增加选项:可以改变曲线的颜色,可以改变窗口背景颜色。 2.(选做)采用图形用户界面,从键盘输入参数a 、b 、n 的值,考察参数对极坐标曲线)cos(θρn b a +=的影响。 五、 实验程序及结果 1. screen=get(0,'ScreenSize'); W=screen(3);H=screen(4); figure('Color','w','Position',[0.2*H,0.2*H,0.5*W,0.3*H],... 'Name','菜单设计实验','NumberTitle','off','MenuBar','none'); hplot=uimenu(gcf,'Label','&Plot'); %定义plot 菜单项 uimenu(hplot,'Label','Sine Wave','Call',... ['t=-pi:pi/20:pi;','h0=plot(t,sin(t));',...

'set(hlr,''Enable'',''on'');',... 'set(hlg,''Enable'',''on'');',... 'set(hlb,''Enable'',''on'');']); uimenu(hplot,'Label','Cosine Wave','Call',... ['t=-pi:pi/20:pi;','h0=plot(t,cos(t));',... 'set(hlr,''Enable'',''on'');',... 'set(hlg,''Enable'',''on'');',... 'set(hlb,''Enable'',''on'');']); uimenu(hplot,'Label','&Exit','Call','close(gcf)'); hc=uimenu(gcf,'Label','&Color'); %定义Color菜单项 hw=uimenu(hc,'Label','&Window Color'); uimenu(hw,'Label','&Red','Call','set(gcf,''Color'',''r'');'); uimenu(hw,'Label','&Green','Call','set(gcf,''Color'',''g'');'); uimenu(hw,'Label','&Blue','Call','set(gcf,''Color'',''b'');'); hl=uimenu(hc,'Label','&Line Color','Separator','on'); hlr=uimenu(hl,'Label','&Red','Call',... 'set(h0,''Color'',''r'');','Enable','off'); hlg=uimenu(hl,'Label','&Green','Call',... 'set(h0,''Color'',''g'');','Enable','off'); hlb=uimenu(hl,'Label','&Blue','Call',... 'set(h0,''Color'',''b'');','Enable','off'); 2. hf=figure('menubar','none','name','图形演示',... 'numbertitle','off'); %定义图形窗口 set(gcf,'unit','normalized','posi',[0.2,0.3,0.55,0.36]); axes('posi',[0.05,0.15,0.55,0.7]); %定义坐标轴 uicontrol(gcf,'style','text','unit','normalized',... %定义静态文本'posi',[0.63,0.85,0.1,0.1],'string','参数 a',... 'horizontal','center'); uicontrol(gcf,'style','text','unit','normalized',...

经典GUI基础入门:MATLAB中GUI用户图形界面学习

GUI指导教程系列(1):GUI入门基本操作 为什么在MATLAB中要使用GUI呢?其实GUI就是Matlab中的Visual Basic,是面向对象的编程,可以使Matlab程序的终端用户,即使不懂的Matlab也可以轻易操作该程序! 如果没有图形用户界面(GUI)我们只能从命令行(Command Window)中调用相关程序,这相对比较繁琐,并且不是所有用户都是这个能力。就好比计算机的DOS 系统,在有windows的情况下,您会选择DOS吗?当然我们也不排除骨灰级的人物! 在本节教程我们主要针对没有GUI创建和使用经历的网友,但是必要的MATLAB 基础知识是需要的。在教程中我们将创建一个简单的GUI程序,它执行两个数的加法运行,然后显示其运算结果。 好下面开始我们的教程! 一、打开和创建GUI界面 1、首先打开Matlab,在Command Window中输入guide回车 2、此时打开GUI编辑器GUIDE(GUI Developer的缩写) 2.1 界面上有两个标签也“Creat New GUI”和“Open Existing GUI” 如果创建新的GUI此时我们选择第一个标签页,但如果打开其它已经存在的GUI 就点击第二个标签吧

2.2 这里我们选择第一个标签下的“Blank GUI”(空白GUI),下面还有几个系统GUI模版,你可以根据需要选择其它的。 2.3 点击“OK”我们正式进入GUIDE界面,呵呵,是不是感觉似曾相识 3、添加你需要的控件到figure中 在添加控件之前,您最好对您的GUI界面布局已经有一定的构思了,否则盲目性太大了不利于您的编程。下面是我们构思的布局。

Matlab图形界面图像的旋转、平移和缩放要点

Matlab图形界面图像的旋转、平移和缩放 姓名: 班级: 学号: 目录 问题描述 (2) 摘要 (2)

正文 (3) 1、界面设计 (3) 2、打开图片功能 (4) 3、实现图片的任意角度的旋转 (5) 4、图像的平移 (8) 5、图像的缩放(放大与缩小) (12) 实验心得 (16) 附录: (16) Matlab图形界面操作 ------图像的旋转、平移和缩放

问题描述 期末运用学习的matlab知识通过图形用户界面对图片进行操作,实现如下功能。 ●能够查找和读取计算机中存储图像。 ●实现图像的旋转、平移、缩放等几何变换。 ●通过matlab界面功能实现界面的完美布局。 ●编写代码和回调函数实现上述功能。 摘要 本次任务旨在完成以下几个任务: ●整体分为四大模块:原图、旋转、平移和缩放。 ●利用数字图像处理技术,以MATLAB为平台,建立一个实现设计主题的

简易处理系统。 ●能显示输入图像、输出图像。 ●程序代码要有注释说明,调用MATLAB函数要清楚并理解函数的功能、 使用范围,在设计说明书中要写清楚函数的功能和参数意义。 ●完成自己课程设计说明书。 正文 1、界面设计 (1)在MATLAB命令窗口中输入“guide”,确定后,弹出GUI窗口。

(2)本次设计中,包含两个坐标轴(axes1、axes2),分别显示原图和处理后的图像。包含六个按钮(Push Button),分别实现“打开图片、保存处理后的图片、旋转、平移、放大、缩小以及退出功能”。 (3)旋转功能同时可以实现选择0—360度任意的度数,当选择不同的度数后,axes2位置就会显示不同选择角度的图片。如果需要保存该图片可以单击保存按钮进行保存。 (4)平移功能的实现,当单击平移按钮,可以有一个默认的平移位置。在设计中预设了几个固定位置,可以选择,分别是X单位Y单位方向都可以选择。达到平移的目的。 (5)放大和缩小功能类似,在界面上表现为选择不同的数据,反映出来不同大小的图片。 (6)操作完成后,点击退出功能,将询问是否退出,如果退出则点击“是”,不退出点击“我还要看看”。 2、打开图片功能 进入程序界面后,要实现几何操作,需要先打开一张图片。单击打开图片按钮,可以选择图片路径,从存储图片的地址任意旋转一张图片,图片就会显示在axes1的位置。效果如2-1所示: 图2-1

图形用户界面设计表格组件示例

程序运行结果截图: 程序清单如下: import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Example10_16 { public static void main(String arts []) { Win win = new Win(); } } class Win extends JFrame implements ActionListener { JTable table; Object a[][]; Object name[] = {"商品名称","单价","销售量","销售额"}; JButton computerRows,computerColums; JTextField inputRowsNumber; int initRows = 1; JPanel pSouth,pNorth; int count = 0,rowsNumber = 0; Win() { computerRows = new JButton("每件商品销售额"); computerColums = new JButton("总销售额"); inputRowsNumber = new JTextField(10); computerRows.addActionListener(this); computerColums.addActionListener(this); inputRowsNumber.addActionListener(this); pSouth = new JPanel();

基于matlab的可视化界面制作

一个可发布的应用程序通常都需要具备一个友好的图形界面(比如,我们开课时或给学生上课而使用课件时,我们一般就会用到可视化界面)。这样用户不需要知道应用程序究竟是怎样执行各种命令的, 而只需要了解可见界面组件的使用方法用户也不需要知道命令是如何执行, 只要通过与界面交互就可以使指定行为得以正确执行。MATLAB可视化界面的设计, 一般有两种方法, 一是直接通过编辑M脚本文件产生GUI(这个方法就是我们在前面学习过的如何编写、调用M文件), 二是通过MATLAB图形用户界面开发环境GUIDE(Graphical User Interface Development Environment)来形成相应文件。这里只讲述在GUIDE环境中利用控件实现可视化界面功能, 不探讨直接通过编辑脚本文件实现可视化界面的方法。 MATLAB软件GUIDE为用户提供了一个方便高效的集成环境, 所有GUI支持的用户控件都集成在这个环境中, 并提供界面外观、属性和行为响应方式的设置方法。GUIDE将用户保存设计好的GUI界面保存在一个FIG资源文件中, 同时自动生成包含GUI初始化和组件界面布局控制代码的M文件, 为实现回调函数提供了一个参考框架。 下面以一个具体实例来说明GUIDE的开发使用以下所讲解的关于各控件的使用, 我们以版本为调试环境, 如果版本的环境和版本略有不同,但基本思想和方法一致。为了方便大家学习,此处提供二个版本(即文字和视频,文字的即为下面的叙述,视频请点击此处。) 实例要完成的功能如下: 首先运行M文件后,出现一个主画面 当分别点击按钮“螺旋线”、“内摆线”、“圆旋转成圆环”和“退出”命令按钮时,分别出现如下列图示的动态、静态的结果。 螺旋线图

图形用户界面(GUI)设计举例

图形用户界面(GUI)设计举例 Tags: MATLAB图形用户界面GUI设计举例 Time : 2005-2-21 18:25:39 | Views : 756 | Font Size : Large Medium Small | Category : 毕业设计,留底回忆 前面我们已经大概的了解了MATLAB环境下的图形用户界面(GUI)设计,下面便通过具体的例子来演示在MATLAB环境下图形用户界面设计的方法与思想。 MATLAB的图形用户界面设计实际上是一种面向对象的设计方法。假设想建立一个图形界面来显示和处理二维图形的颜色、线型及数据点的图标。要求其基本功能是: (1)建立一个主坐标系,用来显示要绘制的二维图形; (2)建立一个列表框,允许用户选择不同的着色方法; (3)建立一组按扭,用于处理二维图形线型和数据点的图标; (4)为图形界面加入菜单项,用于决定坐标轴是否显示及坐标轴上是否需要网格; (A)最初图形界面的设想如下图所示: (B)根据上面的设想,下面我们就来制作它的图形用户界面: 首先,我们先来看其图形窗口的设置。在MATLAB命令窗口中选择菜单可获得一个标准MATLAB 的图形窗口,但我们可采用如下命令使得打开窗口的形式更富于变化: 窗口句柄=figure(属性1,属性值1,属性2,属性值2,……); 通过这样的方式可以很容易地打开一个新的图形窗口,并返回该窗口的句柄,以后我们可以方便地对它进行进一步修正,窗口的属性诸如颜色(Color),标题名(Name)、位置(Position)等,都可根据需要设定。若要改变窗口的某些属性,则可通过调set()函数来完成。这样我们就得到其窗口生成的程序如下: yWin=figure('Position',[100,100,410,310],'Name','对MATLAB绘图功能选项的演示 (2003/3/21)','Menubar','none', 'Resize','off','pointer','custom', 'numbertitle','off'); 接下来我们看起菜单项的加入。我们已建立了一个图形窗口,下面给它加入菜单项。 菜单设置是由uimenu()函数来完成的,该函数调用格式为: 菜单项句柄=uimenu(窗口句柄,属性1,属性值1,属性2,属性值2,……); 还可在某一个菜单条下定义一个新的子菜单条: 子菜单句柄=uimenu(菜单项句柄,属性1,属性值1,属性2,属性值2,……); uimenu()函数的属性最基本的有:

Matlab图形用户界面的制作

第18卷第4期2005年8月 常州工学院学报 J our nal of Cha ngzhou I nstitute of Tec h nology V ol.18 N o.4 A ug.2005 收稿日期:2005204201Matla b图形用户界面的制作 陈德伟 (常州工学院电子信息与电气工程学院,江苏常州213002) 摘要:介绍了在Matla b平台下开发图形用户界面的方法,总结了开发图形用户界面的一般原 则和步骤,给出了常用的创建菜单和各类控件的命令,详细说明了这些命令的使用方法,最后给出 了两个使用Matla b创建图形用户界面的实际例子。 关键词:Matla b;图形用户界面 中图分类号:TP39 文献标识码:A文章编号:1671-0436(2005)04-0007-05   MA TL AB语言是当今国际上科学界最具影响力、也是最有活力的软件。它起源于矩阵运算,并已经发展成一种高度集成的计算机语言,它提供了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、便捷的与其他程序和语言接口的功能。科研工作者选择Matla b就在于利用它优秀的数值计算能力,然而由于Matla b属于解释性语言,不能够生成脱立于Matla b平台的可执行文件,程序的使用者常常迷茫于大量的程序代码而不知所措,不知道如何修改输入参数获得不同的分析结果。因此有必要开发一种运行于Matla b平台下的图形用户界面(GU I:Grap hical User I nterf aces),既保持Matla b优秀的数值处理能力,又提供良好的人机对话窗口,给科研分析设计带来更大的灵活性。 GU I是由窗口、按键、菜单、文字说明等对象构成的一个用户界面,用户通过一定的方法,选择、激活这些图形对象,实现计算、绘图等功能。一个好的GU I不仅有利于用户快速掌握程序的操作流程,有效地使用程序,也有利于开发者展示Matla b平台下的开发技术。目前已有大量书籍介绍了Matla b平台下GU I的设计,但大都没有将基础知识与实例进行有机的结合,本文通过衍射光栅分析软件的创建实例,全面、系统地介绍了Matla b下GU I的开发过程,本文只介绍GU I的开发过程,各类命令的详细使用方法参阅参考文献[1]-[3]。 1 Matlab中GUI的设计方法 优秀GU I的开发原则应使图形界面窗口具有简洁性、一致性和熟悉性,按照以上设计原则,本衍射光栅分析软件在左上窗口放置光栅模型,在右上窗口放置光栅参数输入对话框,在界面的下面放置分析结果显示窗口。 111 菜单项的构建 首先新建一个“3.m”文件,在文件中用命令“Figure”创建一个新的图形界面窗口,创建的图形界面窗口会自动产生菜单项、工具栏,可以根据参数的选择来决定是否显示菜单项和工具栏,这里选择菜单项而不选择工具栏,因此将f igure的参数“me nuba r”设为“f igure”,将“t oolba r”设为“none”,即: ( set(0,′def aultfigurep osition′,[11284800600]);figure(′menubar′,′figure′,′toolbar′,′none′); 第一句设置图形界面窗口的位置和大小,第二句执行窗口的绘制。显示结果如图1所示,工具栏被

实验三--图形用户界面设计(汽院含答案)

实验三--图形用户界面设计(汽院含答案)

实验三图形用户界面设计 实验目的 1.掌握Java语言中GUI编程的基本方法 2.掌握Java语言中AWT组件的基本用法 3.掌握Java语言中Swing组件的基本用法实验导读 1.通过图形用户界面(GUI:Graphics User Interface),用户和程序之间可以方便地进 行交互。 AWT(Abstract Windowing Toolkit),中文译为抽象窗口工具包,是Java提供的用来建立和设置Java的图形用户界面的基本工具。AWT由Java中的java.awt包提供,里面包含了许多可用来建立与平台无关的图形用户界面(GUI)的类,这些类又被称为组件(components)。 Swing是一个用于开发Java应用程序用户界面的开发工具包。它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。 JDK写程序所有功能都是靠虚拟机去操作本地操作系统。比如window下,就是JDK用windows API实现功能。而awt包中很多组件是组件自身去调用本地操作系统代码 swing包中的组件采用的是调用本地虚拟机方法,由虚拟机再调用本地操作系统代码。意思就是中间多了一层,这样就加强了swing包的移植性,与本地关系不那强了。

图3.1 AWT常用组件继承关系图Container为容器,是一个特殊的组件,该组件中可以通过add方法添加其他组件进来。 2.布局,容器中的组件的排放方式。常见的布 局管理器: FlowLayout(流式布局管理器):从左到右的顺序排列。Panel默认的布局管理器。BorderLayout(边界布局管理器):东,南,西,北,中。Frame默认的布局管理器。GridLayout(网格布局管理器):规则的矩阵CardLayout(卡片布局管理器):选项卡GridBagLayout(网格包布局管理器):非规则的矩阵 3.类JFrame是java.awt.Frame 的扩展版本, 该版本添加了对 JFC/Swing 组件架构的支持,常用方法如下: 1)J Frame() 该构造方法可以创建一个无 标题的窗口,窗口的默认布局为 BorderLayout布局。 2)J Frame(String s) 该构造方法可以创 建一个标题为s的窗口,窗口的默认布局 为BorderLayout布局。 3)p ublic void setBounds(int a,int b,int width,int height) 窗口调用该 方法可以设置出现在屏幕上时的初始位 置是(a,b),即距屏幕左面a个像素、距 屏幕上方b个像素;窗口的宽是width, 高是height。 4)p ublic void setSize(int width,int

图形用户界面设计方法

专题八MATLAB图形用户界面设计 8.3 图形用户界面设计方法 ?图形用户界面的组成 ?控件对象及其操作 ?菜单对象及其操作

1.图形用户界面的组成 ?图形用户界面(Graphical User Interface,GUI):用户与计算机进行信息交流的窗口。 ?设计图形用户界面的方法 ?调用建立用户界面控件的函数 ?使用MATLAB提供的GUIDE工具进行可视化设计

2.控件对象及其操作 (1)常用控件 ?输入和输出类控件:编辑框、静态文本、列表框、滑动条等。 ?实施确认、选择操作类控件:按钮、双位按钮、单选按钮、复选框等。

2.控件对象及其操作 (2)建立控件对象 函数uicontrol用于建立控件对象,其调用格式为: 句柄变量=uicontrol(图形窗口句柄,属性1,属性值1,属性2,属性值2,…)其中,属性及其取值决定了控件的特征。若省略图形窗口句柄,默认在当前图形窗口建立控件对象。

2.控件对象及其操作 (3)控件对象的基本控制属性 ?Style属性:定义控件对象的类型,例如‘pushbutton’表示按钮对象,'edit'表示编辑框,等等。 ?String属性:定义控件对象的说明文字。 ?Tag属性:标识控件对象。 ?Enable属性:控制控件对象是否可用。 ?Position属性:定义控件对象的位置,其取值形式为[x,y,w,h]。?Callback属性:其属性值是描述命令的字符串或函数句柄,当选中控件时,系统将自动执行字符串描述的命令或调用句柄所代表的函数,实施相关操作。

例1 在图形窗口中建立三个按钮对象,当单击按钮时分别绘制正弦曲线、显示或隐藏坐标轴的网格、清除坐标轴的图形。 ha= axes('Units','pixels','Position',[40,40,360,360]); ptgrid=uicontrol('Style','pushbutton',... 'String','网格', 'Position', [450,120,48,20],... 'Callback','grid' ); btncla= uicontrol('Style', 'pushbutton', ... 'String', '清除','Position', [450,80,48,20],... 'Callback','cla' ); btnplot= uicontrol('Style', 'pushbutton', ... 'String','绘图','Position', [450,160,48,20]);

图形用户界面综合设计

图形用户界面综合设计(一) 实验内容 多数学校的学生档案信息都由计算机进行管理,在编写的档案管理应用程序中,有档案信息录入模块,该模块的功能是在图形化的界面下,用户把信息输入到计算机中。录入界面的大致样式及组件名称如图。 代码: import java.awt.*; import java.awt.event.*; public class InputData implements ActionListener{ Frame f; //声明框架对象 Label l1, l2, l3, l4; //声明标签对象 TextField t; //声明文本行对象 Checkbox r1,r2; //声明单选钮对象 CheckboxGroup g; //声明组对象 Checkbox c1,c2, c3; Choice ch; //声明选择框对象 Button b; //声明按钮对象 TextArea ta; //声明文本区对象 Panel p1, p2, p3, p4, p5; //声明面板对象

int i = 0; //对象实例化 public InputData(){ f = new Frame("信息录入"); f.setBounds(200,220,500,500); ch = new Choice(); l1 = new Label("姓名:"); l2 = new Label("性别:"); l3 = new Label("爱好:"); l4 = new Label("籍贯:"); t = new TextField(); t.setSize(200,10); g = new CheckboxGroup(); r1 = new Checkbox("男",g,false); r2 = new Checkbox("女",g,true); c1 = new Checkbox("体育"); c2 = new Checkbox("音乐"); c3 = new Checkbox("美术"); b = new Button("确定"); b.addActionListener(this); ta = new TextArea(); p2 = new Panel(); p3 = new Panel(); p4 = new Panel(); p5 = new Panel(); ch.add("济南"); ch.add("潍坊"); ch.add("济宁"); Panel p = new Panel(); p.setLayout(new GridLayout(5,1)); p1 = new Panel(); p1.setLayout(new FlowLayout(FlowLayout.LEFT)); //设定面板布局样式p2.setLayout(new FlowLayout(FlowLayout.LEFT)); p3.setLayout(new FlowLayout(FlowLayout.LEFT)); p4.setLayout(new FlowLayout(FlowLayout.LEFT)); p.add(p1); p.add(p2); p.add(p3); p.add(p4); p.add(p5); p1.add(l1); p1.add(t); p2.add(l2); p2.add(r1);

相关文档
相关文档 最新文档