首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java GUI 開發必備:按鈕監聽與鼠標監聽全攻略

     編輯:Java 相關知識

按鈕監聽:ActionListener 模式

  1. 實現 ActionListener 接口,重寫 actionPerformed(ActionEvent e)
  2. 為按鈕設置動作命令:btn.setActionCommand("press")
  3. 註冊監聽器:btn.addActionListener(listener)
  4. 事件處理中通過 e.getActionCommand() 區分業務邏輯
// 匿名內部類寫法(更常用)
btn.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        if ("press".equals(e.getActionCommand())) {
            System.out.println("點擊了");
        }
    }
});

鼠標監聽:兩種實現方式

方式一:實現 MouseListener 接口(需實現 5 個方法)

public class MyMouseListener implements MouseListener {
    public void mouseClicked(MouseEvent e) { ... }
    public void mousePressed(MouseEvent e) { ... }
    public void mouseReleased(MouseEvent e) { ... }
    public void mouseEntered(MouseEvent e) { ... }
    public void mouseExited(MouseEvent e) { ... }
}
// 註冊:component.addMouseListener(new MyMouseListener());

方式二:繼承 MouseAdapter 抽象類(推薦,按需重寫)

MouseAdapter 實現了 MouseListener、MouseWheelListener、MouseMotionListener,所有方法默認空實現,僅重寫關心的方法:

public class MyMouseAdapter extends MouseAdapter {
    public void mousePressed(MouseEvent e) { ... } // 只處理按下
    public void mouseDragged(MouseEvent e) { ... } // 需同時實現 MouseMotionListener
}

實戰建議

  • 簡單點擊用 MouseListener/MouseAdapter
  • 拖拽、移動、滾輪需額外實現 MouseMotionListener/MouseWheelListener 或直接繼承 MouseAdapter
  • 畫圖板、五子棋等交互密集型應用,MouseAdapter 靈活性最高
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved