网站大量收购独家精品文档,联系QQ:2885784924

第9章组件及事处理.ppt

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章组件及事处理

第9章 组件及事件处理 王磊(副教授) 9.1 图形用户界面概述 一、Java语言平台无关性组件的实现 图形用户界面GUI可以通过键盘或鼠标来响应用 户的操作,是当今流行的操作系统界面。 Java语言为了适应发展趋势,也具有开发图 形化的用户界面的功能。 Java语言自身的特点要求其图形用户界面具 有平台无关性。 9.1 图形用户界面概述 早期的Java版本JDK1.0和JDK1.1采用 的是AWT组件(抽象窗口工具)。特点是简单、易于理解。 AWT是一组Java类,此组Java类允许创建图形用户界面(GUI)。 AWT组件中采用了一种称为对等体(peer)的机制,每个组件都有一个对应的对等体,是用具体的操作系统平台的开发工具开发的,负责在AWT组件与本地平台之间进行交互。 同一个AWT组件在不同的平台上显示出不同的外观,种类不可能太多,这大大限制了Java语言程序的使用和推广。 9.1 图形用户界面概述 Java 1.2版,图形用户界面功能被大幅度地扩展 ,形成了称为Java基础类库(Java Foundation Class,JFC)的一整套API集合,包括以下5个部分: ⑴ 抽象窗口工具; ⑵ Swing图形界面类库; ⑶ 支持二维图形的类库(Java 2D); ⑷ 支持拖放的类库(Drag and Drop); ⑸ 支持易用性的类库(Accessibility)。 主要的部分是Swing图形界面类库。 9.1 图形用户界面概述 Swing组件是用纯Java实现的,在不同的平台上其表现是一致的。这是它与AWT组件的最大区别. Swing组件实现了平台无关的Java语言。 Swing组件是AWT组件的扩展,它提供了许多新的图形用户界面组件。因为大部分AWT组件都在Swing组件中进行了重写,所以本章后面我们在介绍组件的时候将以Swing组件为主。 Swing组件的类以字母“J”开头,除了保留有与AWT类似的组件之外,又增加了丰富的高层组件。 javx.swing 包中的体系结构 9.4 Swing组件的使用 一、组件的分类 Swing组件从功能上可以分成如下几类:  ⒈顶层容器:即JFrame、JApplet、JDialog、JWindow等四个重量级组件。基本的Swing组件(例如,JButton、JTextField等)不能直接添加在顶级容器内,需要一个内容面板Panel(普通容器)辅助。  ⒉普通容器(内容面板):使用在各种不同的情况下的中间容器,如JPanel、JScrollPane、JSplitPane、JTabbedPane等,一般可以被添加到顶层容器中。 9.4 Swing组件的使用 一、组件的分类 ⒊ 特殊容器:在GUI上起特殊作用的中间层容器,如JInternalFrame、JLayeredPane、JRootPane、JToolBar、JOptionPane等。 ⒋ 基本组件:可以实现人机交互的组件,如JButton、JToggleButton、JRadioButton、JCheckBox、JComboBox、JList、JSlider、JScrollBar等,通常是界面上的主要角色。 9.4 Swing组件的使用 ⒌不可编辑信息显示:向用户显示不可编辑信息的组件,如JLabel、JProgressBar、JToolTip等,大多是起一个信息提示的作用。 ⒍可编辑的格式化信息的显示:向用户显示能被编辑的格式化信息的组件,如JTable,JTree,JColorChooser和JFileChooser,用来实现用户与机器之间的信息交互工作。 Swing GUI框架 基本的 Swing 应用程序 import javax.swing.*; public class HelloSwing { public static void main(String[] args) { JFrame frame = new JFrame(HelloSwing); JLabel label = new JLabel(你好,Swing); frame.getContentPane().add(label); frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); frame.setSize(300,200); frame.setVisible(true); } } 另外一种程序写法,推荐。 import java.awt.*;

文档评论(0)

181****7127 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档