- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象技术 第6章 GUI应用程序设计 学习目标 Java图形用户界面概述 Swing容器 布局管理器 Swing组件 事件处理机制 综合应用举例 6.1 图形用户界面概述 GUI - Graphics User Interface 图形用户界面(GUI)使用户可以和程序进行可视化交互。无论是程序的设计者还是使用者都可以通过图形用户界面明显“看到”和“感觉”到程序的存在。图形用户界面为不同的应用程序提供了感觉上一致的用户界面组件,这样使用户在记住执行功能的复杂命令上花费较少的时间,而花更多的时间通过有效的方式来使用程序。 用户界面设计是一个软件的表现层设计。好的用户界面设计对一个系统的成功是至关重要的。一个使用起来困难的界面,轻者会造成用户操作不便;重者引起用户反感,不管系统的功能如何而拒绝使用该软件系统。 6.1 图形用户界面概述 计算机操作界面的发展从单调的命令行形式到图形化窗口形式,逐步形成了现在计算机用户认可的图形用户界面主要特征,主要集中在窗口、图标、菜单、指点、图形等方面。 图形用户界面包含了许多独立的显示元素,供用户交互。它们由程序中的GUI组件组成。GUI组件是用户通过键盘或鼠标进行交互的对象,菜单、按钮、文本域、标签和下拉列表框等GUI组件是图形用户界面的常用部分。 6.1 图形用户界面概述 java.awt包, AWT, 抽象窗口工具集 依赖本地GUI, “重型组件”(heavyweight component) javax.swing包, Swing组件库 不依赖本地GUI, “轻型组件”(lightweight component) Swing带来了以下优势: 更丰富、更方便的用户界面元素集。 对底层平台的依赖更少,因此和平台有关的bug也少得多。 给不同平台上的用户一致的感觉。 6.1 图形用户界面概述 GUI类的分类: 容器类 – container class 用来包含其他组件. 如: JFrame, JPanel, JApplet, …… 辅助类 – helper class 组件和容器用来绘制和放置对象 如: Graphics, Color, Font, FontMetrics, Dimension, …… 组件类 – component class 用户界面的组成部分 如: JButton, JTextField, JTextArea, …… 6.2 Swing容器 容器是用来放置其他组件的一种特殊部件。 顶层容器:最外层容器,可以包含组件或者其他容器。 6.2 窗体容器 框架(JFrame)是—种常用的顶层容器。框架的内部结构比较复杂,它可以划分为4种窗格:根窗格(Root Pane)、布局窗格(Layered Pane)、内容窗格(Content Pane)和玻璃窗格(Glass Pane)。 对JFrame添加组件有两种方式:1、用getContentPane方法获得JFrame的内容窗格,再对其加入组件;2、建立一个JPanel之类的中间容器,把组件添加到容器中,用setContentPane方法把该容器置为JFrame的内容窗格。 面板(JPanel)有一个能够在上面进行绘制的表面,而且其本身也是容器。因此,它除了可以绘制图形、文字,还能容纳按钮、滑动条等其他用户界面元素。 创建顶层容器 定义一个JFrame的子类 创建上述子类对象 设置窗口关闭操作 设置顶层容器 定位位置 setLocation(int x, int y) 设定大小 setSize(int width, int height) setResizable(boolean x) 可否调整大小 同时定位置和大小 setBounds(int xleft, int yleft, int width, int height) 面板容器 没有边框,没有标题栏的中间容器。包含两种 普通面板容器 JPanel 带滚动视图的容器 JScrollPanel 普通面板容器 JPanel 在默认情况下除了背景色不会绘制任何东西。 该容器又可用于其他任何容器中,如 JFrame、JPanel、JApplet或JDialog组件。 其默认布局方法是FlowLayout 带滚动视图的容器 JScrollPanel 使用带滚动功能的视图容器,利用滚动条移动窗口,让其中的组件能够分区域的显示出来。 6.3 布局管理器 Java中设置布局的类也叫布局管理器(LayoutManager)。布局管理器是执行布局管理的特殊的对象,它确定容器的组件是如何组织和管理的。当创建一个容器时,Java自动地为它创建并分配一个默认的布局管
文档评论(0)