图形用户界面设计与实现 PPT课件_第1页
图形用户界面设计与实现 PPT课件_第2页
图形用户界面设计与实现 PPT课件_第3页
图形用户界面设计与实现 PPT课件_第4页
图形用户界面设计与实现 PPT课件_第5页
已阅读5页,还剩63页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、图形用户界面的设计和实现、教材第7章、设计原则集装箱和布局标准组件事件处理自定义组件、用户界面设计原则和图形介面图形用户界面(GUI)文本界面,以命令行方式与用户交互。图形界面以多种介质显示信息,并使用直观方便的GUI标准组件接收命令。控件与用户界面(用户必须由任务驱动)中任务的样式相匹配。宽容(容错)性。简单和美观并重。介面配置、集装箱、标准组件、自定义组件、GUI组件的创建以及相互位置关系(包括、相邻、交叉)的排序。GUI组件徐璐定义对其他事件的响应,以提供与用户的交互和介面功能。介面元素、容器是用于组织其他介面组件和元素的单位。可以形成容器的层次结构,复杂的结构Window(框架、app

2、let和Dialog)组件是图形用户界面的基本单元,不再包含其他组件。GUI组件是图形用户界面标准化的结果。GUI组件的作用是完成与用户的交互。自定义组件字符、图形和图像不能像标准组件那样被系统识别和认可,只是起到装饰作用。无法响应用户的行为,没有交互功能。AWT包、Abstract Windows Toolkit(抽象窗口工具)AWT类库中的各种操作被定义为在不存在的“抽象窗口”中运行。徐璐提取在其他硬件和软件平台上实现的窗口的公用特性。设计的界面独立于特定的介面实现。提供与机器无关的基本GUI标准组件。选择类组件:单选按钮、核取方块、下拉菜单、列表框字处理类组件:标签、文本框、剪辑框命令类

3、组件:按钮、工具栏、菜单、AWT类层次结构图表、component、container和panel设定SetSize(intwidth,intheight)组件大小重绘paint(Graphicsg)组件设定setFont(Fontf)组件字体设定setBackground(Colorc)但是,您可以程式化重新定义工作。您可以使用Repaint()方法触发update()方法。Font类,java.awt.Font设计字体显示效果(创建字体对象)fontfn=newfont(字符串字体,int样式,int大小);字体:TimesRoman、Courier和Arial等样式:三个茄子常量font

4、.plain、font.bold和font.italic大小:单词大小(磅)使用与设置相同的字体对象Color类、构造函数1Frame Dialog没有菜单栏,因此无法更改其大小。要显示Panel,必须将其置于Window组件(或网页浏览器窗口)中。可以放置其他零部件并具有自己的布局管理器的矩形区域。默认方法add(组件comp)将指定的组件放在容器中。add(Component comp,int index) remove(Componentcomp)删除指定组件set layout (layoutmp)的容器中的组件布局,即layout manager示例:setLayout(new Fl

5、owLayout()牙齿布局管理器对象确定容器中组件的位置和大小。如果需要在容器中查找组件并确定组件大小,请向布局管理器对象发送消息以完成任务。直接管理组件的方法调用容器的setLayout(null)方法,关闭布局管理器。调用每个组件的setLocation()方法以确定组件的位置。调用每个组件的setSize()方法以确定其大小。直接管理组件将失去平台独立性。batch manager对象、batch manager类型和FlowLayout:组件从左到右水平排列为一行。填充后换行BorderLayout:北、南、东、西、中间GridLayout:将组件与行和列中的网格对齐。GridBag

6、Layout:更复杂、更强大的网格布局CardLayout:将每个组件排列到一个卡中默认布局管理器Window,Frame,Dialog BorderLayout Panel,Applet FlowLayout:布局管理器选择方法布局管理器类对象设置BorderLayout setLayout()设置新的布局管理器。Add(组件comp)将组件添加到容器中(在容器不可见时添加)。Void setsize (intwidth,intheight) set visible (true),7-1a,frame panel,frame fm1=new frame Fm1.setSizefm1 . se

7、t background(color . gray);Fm1.setLayout(空);面板pn1=新面板();Pn1.setSize(100,100);pn1 . set background(color . red);Pn1.setLocation(0,50);fm1 . add(pn1);fm1 . set visible(true);7-1b,FlowLayout布局管理器,创建者:flow layout();Flowlayout (intalign,inthgap,intv gap);Align:对齐:LEFT CENTER RIGHT hgap:组件水平间距(像素)vgap:在没有

8、组件垂直间距(像素)参数的构造函数中创建的FlowLayout对象(CENTER居中对齐、组件之间的水平间距、FlowLayout对象)F.setSize(400,300);/不起作用f . set background(color . gray);f . set layout(new flow layout(flow layout . left,10,20);B1=new Button(Button 1);B2=new Button(Button 2);B3=new Button(Button 3);f .追加(B1);f .追加(B2);f .追加(B3);f . set visible(

9、true);f . pack();7-1c,BorderLayout布局管理器,set layout(new border layout()add(B1,border layout . north);更改集装箱大小不会更改组件的相对位置。BorderLayout布局管理器,f=new Frame(border layout);F.setSize(200,200);B1=new Button(Button 1);b5=new Button(Button 5);F.add(b1,BorderLayout .NORTH);F.add(b2,BorderLayout .SOUTH);F.add(b3,

10、BorderLayout .WEST);F.add(b4,BorderLayout .EAST);F.add(b5,BorderLayout .CENTER);f . set visible(true);7-1d,border-panel,class my frame extends frame my frame()button B1=new button(1);Button B2=new Button(2);Button B3=new Button(3);Button B4=new Button(4);面板p=new panel();p . add(B1);p . add(B2);添加(p,

11、border layout . north);Add(b3,BorderLayout)。WEST);Add(b4,BorderLayout)。CENTER);pack();set visible(true);7-1e,GridLayout布局管理器,使用布局编辑器创建GridLayout对象,指定网格拆分的行数和列数(与网格大小相同)。SetLayout(new GridLayout(行数,列数);SetLayout(new GridLayout(行数、列数、行间距、列间距);调用调用容器的方法add(),将组件添加到容器。组件必须填充第一行的第一个单元格、第一行的第二个单元格和每个网格中的组

12、件。若要将网格保留为空,可以添加空标签add (new Label()。GridLayout布局管理器,f=new Frame(grid layout);F.setLayout(new GridLayout(2,3);F.setSize(200,100);f . set background(color . gray);B1=new Button(1);B6=new Button(6);f .追加(B1);f . set visible(true);7-1f,布局示例,frame FM=new frame()FM . set layout(new flow layout();TF=new Te

13、xtField(22);FM . add(TF);面板P1=new panel();P1.setLayout(new GridLayout(4,3);P1 . add();Panel p2=new Panel();P2.setLayout(new GridLayout(4,3);p2 . add();调频。add(P1);调频。add(p2);7-2布局、GridBagLayout布局管理器和每个GridBagLayout对象保留可以占据一个或多个单元格作为显示区域的动态矩形网格。每个组件都链接到GridBagConstraints类的实例,指定其在显示区域中的放置方式并确定其大小。步骤:set layout(new grid baglayout();gridbagconstraintsgbc=new gridbagconstraints();gbc . gridx=0;(分配属性)add(button1,gbc)、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论