JAVA学习笔记——GUI图形用户界面

1.GUI:
  Graphical User Interface(图形用户接口)。
  用图形的方式,来显示计算机操作的界面,这样更方便更直观。
 CLI:
  Command line User Interface (命令行用户接口)
  就是常见的Dos命令行操作。
  需要记忆一些常用的命令,操作不直观。
  
2.awt和swing包的概述
  java.awt:Abstract Window ToolKit (抽象窗口工具包),需要调用本地系统方法实现功能。属重量级控件。
  javax.swing:在AWT的基础上,建立的一套图形界面系统,其中提供了更多的组件,而且完全由Java实现。增强了移植性,属轻量级控件。

3.GUI继承体系图
这里写图片描述
  Container常用子类:Window Panel(面板,不能单独存在。)
  Window常用子类:Frame Dialog
  简单的窗体创建过程:

Frame  f = new Frame(“my window”); //创建窗体并直接设置标题
//f.setTitle("new window") ;  //设置标题
f.setLayout(new FlowLayout()); 
//f.setSize(300,400);//设置窗体大小
//f.setLocation(300,200);//设置窗体出现在屏幕的位置
f.setBounds(300,200,300,400); //设置窗体的位置和大小(x,y,width,height)
f.setVisible(true);  //设置窗体可见

4.事件监听机制
  A:事件源 事件发生的地方
  B:事件 就是要发生的事情
  C:事件处理 针对事件的处理方案
  D :事件监听 就是把事件源和事件关联起来

5.适配器设计模式
  问题:
    接口(方法太多) –实现类(仅仅使用一个方法,也得把其他方法都实现,哪怕是空实现)
  解决方案:
    接口(方法比较多) –适配器类(抽象类,实现接口,仅仅空实现) –实现类(用哪个方法重写哪个)

6.对窗口的点击操作添加监听事件方法
  A:WindowListener :用于接收窗口事件的侦听器接口
    public void addWindowListener(WindowListener l)
      此处的参数可以使用适配器类对象new WindowAdapter(){}
  B:该适配器方法有以下:
   void windowActivated(WindowEvent e) :激活窗口时调用。
   void windowClosed(WindowEvent e) :当窗口已被关闭时调用。
    void windowClosing(WindowEvent e) :窗口正处在关闭过程中时调用。
    void windowDeactivated(WindowEvent e) :停用窗口时调用。
    void windowDeiconified(WindowEvent e) :取消图标化窗口时调用。
    void windowGainedFocus(WindowEvent e) : 该 Window 被设置为聚焦 Window 时调用,聚焦 Window 意味着该 Window 或其某个子组件将接收键盘事件。
   void windowIconified(WindowEvent e) :图标化窗口时调用。
    void windowLostFocus(WindowEvent e) :该 Window 不再为聚焦 Window 时调用,不再为聚焦 Window 意味着键盘事件不再传递到该 Window 或其任意子组件。
    void windowOpened(WindowEvent e) :已打开窗口时调用。
    void windowStateChanged(WindowEvent e) : 窗口状态改变时调用。

7.对鼠标点击事件添加监听方法
  A:MouseAdapter:接收鼠标事件的抽象适配器类。
    public void addMouseListener(MouseListener l)
     此处的参数可以用鼠标适配器类new MouseAdapter(){}
  B:该适配器方法主要有
   void mouseClicked(MouseEvent e) :鼠标按键在组件上单击(按下并释放)时调用。
   void mouseDragged(MouseEvent e) :鼠标按键在组件上按下并拖动时调用。
    void mouseEntered(MouseEvent e) :鼠标进入到组件上时调用。
    void mouseExited(MouseEvent e) :鼠标离开组件时调用。
    void mouseMoved(MouseEvent e) :鼠标光标移动到组件上但无按键按下时调用。
    void mousePressed(MouseEvent e) :鼠标按键在组件上按下时调用。
    void mouseReleased(MouseEvent e) :鼠标按钮在组件上释放时调用。
    void mouseWheelMoved(MouseWheelEvent e) :鼠标滚轮旋转时调用。

8.对文本框添加监听事件
  A:KeyAdapter:接收键盘事件的抽象适配器类。
    public void addKeyListener(KeyListener l)
      此处的参数可以用按键适配器类new KeyListener (){}
  B:该适配器方法如下:
     void keyPressed(KeyEvent e) :按下某个键时调用此方法。
     void keyReleased(KeyEvent e) :释放某个键时调用此方法。
     void keyTyped(KeyEvent e) :键入某个键时调用此方法。

9.菜单
  这里写图片描述
  //菜单之间的关系
  menu.add(menuitem) ;
  menubar.add(menu) ;
  //菜单栏不是用的add
  frame.setMenuBar(menubar) ;
  

猜你喜欢

转载自blog.csdn.net/u012990327/article/details/79945850