v512www.v512.comGUI --> Graphical User InterfaceAbstract Window Toolkit事件处理:java.awt.* , java.awt.event.*组件(Component)是图形用户界面的基本组成元素。组件通常不能单独显示,必须将他放在容器里java.awt.Component是除了菜单相关组件之外的所有的父类容器(Container) --> 组件的一种 java.awt.Window java.awt.Panel --> 不能单独存在 Object --> Component -- > Container --> Window --> Frame能够自由停泊的"窗口"默认不可见 setVisible()add()public class TestFrame{ public static void main(String args[]){ Frame frame = new Frame("GUI"); frame.setSize(100 , 100); frame.setVisible(true);}}Ctril + CColor组件的定位 位置和大小 布局管理器 人工控制 setLocation() setSize(); setBounds()Object--> Component-->Container-->Panel布局管理器 Window及子类默认BorderLayout Panel及子类默认 FlowLayout FlowLayout --> 默认居中对齐方式 BorderLayout 组件尺寸被强行控制GridLayout布局 pack()-->刚好能显示原始大小:类似setSize()setResizeable();CardLayout布局 exampleGridBagLayout布局建立在GridLayout基础上容器的嵌套GUI事件处理 多种事件类型 事件对象转发给事件处理对象frame.add( , )mouseactionCommand属性 按钮/菜单 记录事件信息 e --> ActionEvent Button b2 = new Button(“start”);b2.setActionCommand("game over"); e.getActionCommand();actionCommand()属性默认值和标签值相同计算器 -->输出按钮标签绘图软件多重监听器事件适配器类 abstract Adapter 适配器类实现了相应监听器接口 内部类,匿名类 文本组件:文本框/文本域 菜单组件 选择组件 对话框组件 滚动组件java.awt.Color类 标准RGB颜色空间中的颜色java.awt.Font类 字体名称,字体样式,AWT绘图 绘图:Component paint(Graphics g)java.awt.Graphics 抽象类系统自动做了一些事 基本图形--画线、多边形、圆、填充图形和文字等; 绘制图像--主要用于图像显示; Canvas --> 画布 空白区域 组件 不是容器文件对话框组件Java小程序(Applet) java.applet.Applet类运行方式性能安全性要求public class HelloWorld extends Applet{ String text; public void init(){ text = "Hello World" this.setBackgound(new Color(120,180,140));}public void paint(Graphics g){ g.drawString(text , 25 , 25);}}<html> <applet code="HelloWorld.class" width = "200" height="150"> </applet></html>IE浏览器中appletviewer空兼容性 安全性限制沙箱 --》 解释执行Applet插件标记 <applet [archive = archiveList] code = appletFile.class width = pixels [codebase = codebaseURL] [alt = alternateText] [name = appletInstanceName] [align = alignment] [vspace=pixels] [hspace=pixels]>[param name = var1 value=value1][param name = var2 value=value2]</applet>