第6章_图形用户界面的设计 面向对象程序的设计 Java .pptVIP

第6章_图形用户界面的设计 面向对象程序的设计 Java .ppt

  1. 1、本文档共50页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章_图形用户界面的设计 面向对象程序的设计 Java .ppt

6.2.3 布局管理器 1.流布局管理器(FlowLayout) 在一行上水平排列组件,直到该行没有足够的空间为止,然后另起一行继续排列。当用户缩放容器时,布局管理器将进行自动控制,重新排列。我们可以指定流布局管理器的组件排列方式,如居中(默认)、左对齐、右对齐等。如: setLayout(new FlowLayout(FlowLayout.LEFT)); //左对齐 setLayout(new FlowLayout(FlowLayout.RIGHT)); //右对齐 setLayout(new FlowLayout(FlowLayout.CENTER)); //居中 2.边界布局管理器BorderLayout 网格由应占用的行和列的数目指定。开始添加构件时,管理器从第一行开始完整地填充,然后再移到下一行。如果添加的组件超过了最初指定的单元格(行×列)的数目,则多余的组件被添加到每一行的末尾。也就是创建了新列而不是新的行以容纳多余的组件。按照换行规则,如果添加了一个多余构件,则列数加一,而每一行的第一个构件移到上一行中。 设置图6-1中线宽的按钮,采用如图6-17所示的6行1列网格布局。 图6-17 设置线宽按钮的网格布局 因为只有4个单选按钮,所以最后两个网格空着,这样使得这几个按钮布局紧凑。实现上述布局的代码如下: //按钮已在前面的例子中创建 //设置线宽面板按6行1列的网格布局 setLinePanel.setLayout(new GridLayout(6,1)); //将单选按钮添加到设置线宽面板 setLinePanel.add(b1); setLinePanel.add(b3); setLinePanel.add(b5); setLinePanel.add(b10); //将设置线宽面板添加到设置线宽工具条 lineTool.add(setLinePanel); 6.3 事件处理 6.3.1 JDK的事件处理模型 1.层次模型 * * 第6章 图形用户界面设计 6.1问题的提出与分析 6.2创建图形用户界面 6.3 事件处理 6.4 绘制图形 6.5 问题的实现 本章综述 Java程序广泛的应用在图形用户设计方面,随着操作系统的发展,不论是Windows还是Unix等操作系统,都支持图形用户界面操作方式。也使得各种程序设计语言以扩充库的形式支持图形用户界面设计成为必然。Java程序的跨平台性更体现了它在图形用户界面设计中的优势。 本章通过一个画图程序的实例,从介绍如何设计图形用户界面开始,逐步介绍Swing容器与组件的设计,组件相关事件的处理,以及绘制图形和图形文件的保存等方面的知识。本章的重点内容包括: (1)Swing容器与组件; (2)布局管理器; (3)事件处理; (4)绘制图形。 6.1问题的提出与分析 【例6-1】Windows操作系统的画图程序是大家非常熟悉的图形用户界面应用程序,要求用java来设计一个类似的画图程序。 【分析】对于设计图形用户界面程序而言,一般分为两个步骤:第一步,设计相应的用户界面,并根据需要对相关的组件进行布局;第二步,添加相关的事件处理,如鼠标、菜单、按钮和键盘等事件。这里我们将按以下步骤来完成画图程序的设计:界面框架的实现、鼠标事件的响应、图形画笔粗细设置的实现和图形的保存。 首先,我们来看一下这个画笔程序的界面,如图6-1所示。 图6-1 简单绘图程序界面 6.2.1 AWT与SWING概述 与AWT相比较,Swing具有以下几点优势: (1)Swing组件可以给设计者带来更大的灵活性,有利于增强组件的功能。 (2)在AWT中,有一部分代码是用C编写的;而Swing是用纯java编写的,增强了应用程序与环境的无关性。 (3)Swing允许用户自行定制桌面的显示风格,让窗口系统更加适应用户的习惯和要求,而AWT组件完全依赖于本地平台。 (4)增加了裁剪板、鼠标提示和打印等功能。 (5)Container是抽象容器类,所有Swing组件都派生自Container类,因而所有的Swing组件都具有容器的功能。 在设计画图程序时,我们采用Swing组件来进行设计。 6.2.2 容器与组件 组件(component)是图形用户界面中的各种部件(如标签、按钮、文本框等等),所有的组件类都继承自JComponent类。容器(container)是用来放置其他组件的一种特殊部件,在java中容器用Container类描述。 如图6-3所示,除4个顶级组件外,其他的Swing组件类都继承自JComponent类,而JFrame、JDialog、JWindow和JApplet分别扩展了Frame、Dialog、Window和App

文档评论(0)

yuzongxu123 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档