第三章 5.JavaSwing.ppt
文本预览下载声明
第一讲:Java Swing 组件技术 在本单元您能了解如下知识点: Swing的“外观和感觉” ; Swing容器组件的编程; Swing中的标准对话框; Swing基本组件的编程; Swing的编程具体应用—设计出文本编辑器 一、Java Swing 组件技术简介 Swing 特性: 是AWT的扩展,它比AWT提供了更多的组件和外观。 是Sun公司的新一代的图形界面的标准。 Swing组件的实现不包括任何于平台相关的代码 它是纯Java代码(但Jframe、JDialog、JApplet除外),因此与平台无关。 AWT的缺点: 组件少而且是本地代码实现。 Swing和AWT相比,一个重要改进在于Swing把一个组件的处理分为图形部分和数据部分。 其中图形部分由编程环境统一处理(V) 而数据部分由一个数据处理模型进行处理(M)。 Swing编程所应该注意的问题 1、由于Swing中的各个组件类与AWT的组件类有相同的基类,所以可以在同一界面中同时使用Swing与AWT。但有时可能不能正常显示,最好不要合用。 2、正确理解重量组件与轻量组件的不同 轻量组件—Swing组件,由纯Java代码实现,占用系统资源少。 重量组件--AWT组件,由本地C代码实现,占用系统资源多。另外JFrame、JDialog、JApplet也是重量组件。 二、Swing的“外观和感觉”(Look and Feel) 1、Swing 提供了三种“外观和感觉”。 Windows系统; Motif X Window系统(UNIX下) Metal(Swing的新的交平台)。 2、意义:通过Look and Feel机制,我们可以使程序的设计者任意转换程序的人机界面来对应不同的操作系统平台。 (1)设计时设定---使用Swing的新的交平台 try { UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); } catch (Exception exc) { System.err.println(Error loading LF: + exc); } (1)设计时设定---使用目标系统平台的外观(如在Windows系统下为Windows的外观) try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName() ); } catch (Exception exc) { System.err.println(Error loading LF: + exc); } (1)设计时设定---强制为某一种系统平台 原理:加载对应的GUI驱动程序的类。 UIManager.setLookAndFeel(com.sun.java.swing.plaf.windows.WindowsLookAndFeel); UIManager.setLookAndFeel(com.sun.java.swing.plaf.motif.MotifLookAndFeel); UIManager.setLookAndFeel(javax.swing.plaf.metal.MetalLookAndFeel); (2)运行时动态地设定 1、方法UIManager.setLookAndFeel(“javax.swing.plaf.metal.MetalLookAndFeel” );SwingUtilities.updateComponentTreeUI(this);//对由this所指示的组件重新设置外观 2、注意:由于JFrame、JApplet等为重量级组件,因此它的外观只与操作系统平台有关系,在相同的操作系统平台下表现出相同的外观。 四、在Swing容器中添加组件 对JFrame与JApplet等顶级的容器,在添加组件时与AWT不同点是不能直接调用容器的add()方法。 2、JFrame 编程 (1)它为Frame的升级,代表应用程序的主窗口。 (2)编程的基本方法为: 创建JFrame类的子类; 在自己的子类的构造函数中调用上层基类的构造函数;设置窗口的大小; 设置在用户关闭窗口时则应该完成什么行为;最后显示出窗口。 示例代码 import javax.swing.*; public class JFrameTest extends JFrame {
显示全部