找回密码
 快速注册

QQ登录

只需一步,快速开始

查看: 1415|回复: 0

JAVA 私塾第十、十一章笔记整理

[复制链接]
solimh 发表于 2011-2-19 10:42:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?快速注册

×
JAVA 私塾第十、十一章笔记整理

第十章 AWT

    AWT(Abstract Window Toolkit)用于Java Application 的GUI(Graphical User Interface图形用户界面)编程。
    AWT所涉及的类一般在java.awt包及其子包中。
   【此处有图片,可以到JAVA 私塾官网下载完整笔记:w ww.javass.cn】

    布局管理器       
        FlowLayout  (Panel和Applets的缺省布局管理器)
        对组件逐行定位,行内从左到右,一行排满后换行。默认的对齐方式是居中。
        BorderLayout   (Window, Dialog和Frame的缺省布局管理器)
        将整个容器的布局划分成东西南北中五部分,组件只能被添加到指定区域。每个区域只能加入一个组件,如加入多个,则先前的会被覆盖。
        GridLayout
        将空间划分成规则的矩形网格,每个单元区域大小相等,组件被添加到每个单元各种,先从左到右满一行后换行,再从上到下。
        CardLayout
        GridBagLayout

第十一章Swing和GUI事件处理

    GUI事件∵接口:

事件类型 相应∵接口∵接口中的方法
ActionActionListeneractionPerformed(ActionEvent)
ItemItemListeneritemStateChanged(ItemEvent)
MouseMouseListenermousePressed(MouseEvent)
mouseReleased(MouseEvent)
mouseEntered(MouseEvent)
mouseExited(MouseEvent)
mouseClicked(MouseEvent)
Mouse MotionMouseMotionListenermouseDragged(MouseEvent)
mouseMoved(MouseEvent)
KeyKeyListenerkeyPressed(KeyEvent)
keyReleased(KeyEvent)
keyTyped(KeyEvent)
FocusFocusListenerfocusGained(FocusEvent)
focusLost(FocusEvent)
AdjustmentAdjustmentListeneradjustmentValueChanged(AdjustmentEvent)
ComponentComponentListenercomponentMoved(ComponentEvent)
componentHidden (ComponentEvent)
componentResized(ComponentEvent)
componentShown(ComponentEvent)
WindowWindowListenerwindowClosing(WindowEvent)
windowOpened(WindowEvent)
windowIconified(WindowEvent)
windowDeiconified(WindowEvent)
windowClosed(WindowEvent)
windowActivated(WindowEvent)
windowDeactivated(WindowEvent)
ContainerContainerListenercomponentAdded(ContainerEvent)
componentRemoved(ContainerEvent)
TextTextListenertextValueChanged(TextEvent)


    事件适配器:

  1. public abstract class WindowAdapter implements WindowListener {
  2.    public void windowOpened(WindowEvent e) {}
  3.    public void windowClosing(WindowEvent e) {}
  4.    public void windowClosed(WindowEvent e) {}
  5.    public void windowIconified(WindowEvent e) {}
  6.    public void windowDeiconified(WindowEvent e) {}
  7.    public void windowActivated(WindowEvent e) {}
  8.    public void windowDeactivated(WindowEvent e) {}
  9. }
复制代码
内部类

  1. import java.awt.*;
  2. import java.awt.event.*;
  3. public class Test1{
  4.    Frame f = new Frame("Java Gui");
  5.    public Test1(){
  6.       MyInner m = new MyInner();
  7.       f.addWindowListener(m);
  8.       f.setSize(150,150);
  9.       f.setVisible(true);
  10.    }
  11.    public static void main(String args[]){
  12.       new Test1();
  13.    }
  14.    class MyInner extends WindowAdapter{
  15.       public void windowClosing(WindowEvent e){
  16.          System.exit(1);
  17.       }
  18.    }
  19. }
复制代码
匿名内部类

  1. import java.awt.*;
  2. import java.awt.event.*;
  3. public class Test2{
  4.    Frame f = new Frame("Java Gui");
  5.    public Test2(){
  6.       f.addWindowListener(new WindowAdapter(){
  7.          public void windowClosing(WindowEvent e){
  8.             System.exit(1);
  9.          }
  10.       });
  11.       f.setSize(150,150);
  12.       f.setVisible(true);
  13.    }
  14.    public static void main(String args[]){
  15.       new Test2();
  16.    }
  17. }
复制代码
什么是双缓冲?
       在后台进行界面的更新,然后在前台进行界面交换
       功能:双缓冲可以改善一个被频繁改变的组件的外观

    *Swing和AWT的区别?
       Swing提供了更完整的组件,引入了许多新的特性和能力。Swing API是围绕着实现            
       AWT 各个部分的API 构筑的。
       AWT 采用了与特定平台相关的实现,而绝大多数Swing 组件却不是这样做的,因此Swing 的外观和感觉是可客户化和可插的。
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

快速回复 返回顶部 返回列表