教育路上
摘要:java 鼠標事件,在圖形用戶界面中,用戶會經常通過鼠標來進行選擇、切換界面等操作,這些操作 被定義為鼠標事件,其中包括鼠標按下、鼠標松開、鼠標單擊等。。以下是我們為大家整理的,相信大家閱讀完后肯定有了自己的選擇吧。
2022-07-07 19:33網絡推薦
件,幾乎所有的組件都可以產生鼠標事件,處理鼠標事件時首先需要通過實現
MouseListener 接口定義監聽器,也可以通過繼承適配器 MouseAdapter 類來實現,然后調用
addMouseListener( )方法將監聽器綁定到事件源對象。接下來通過一個例程來學習如何監聽鼠標
事件,如例 11 -6 所示。
例 11-6 Example06.java
import java.awt.*;
import java.awt.event.*;
public class Example06 {
public static void main(String[] args) {
final Frame f = new Frame("WindowEvent");
// 為窗口設置布局
f.setLayout(new FlowLayout());
f.setSize(300, 200);
f.setLocation(300, 200);
f.setVisible(true);
Button but = new Button("Button"); // 創建按鈕對象
f.add(but); // 在窗口添加按鈕組件
// 為按鈕添加鼠標事件監聽器
but.addMouseListener(new MouseListener() {
public void mouseReleased(MouseEvent e) {
System.out.println("mouseReleased-鼠標放開事件");
}
public void mousePressed(MouseEvent e) {
System.out.println("mousePressed-鼠標按下事件");
}
public void mouseExited(MouseEvent e) {
System.out.println("mouseExited—鼠標移出按鈕區域事件");
}
public void mouseEntered(MouseEvent e) {
System.out.println("mouseEntered—鼠標進入按鈕區域事件");
}
public void mouseClicked(MouseEvent e) {
System.out.println("mouseClicked-鼠標完成點擊事件");
}
});
}
}
編譯運行程序,生成的窗口如圖 11-10 所示。
例 11-6 中窗口上的“Button”按鈕不再像前面按鈕那樣布滿整個窗口,這是由于設置
了窗口的布局方式(有關 GUI 的布局管理,將在本章后面進行講解)。用鼠標對窗口上自按鈕進行操
作,把鼠標移進按鈕區域,點擊按鈕然后釋放,再移出按鈕區域,命令行窗的輸出如圖 11-11 所
示。
圖 11-10 例 11-6 運行結果 圖 11-11 例 11-6 運行結果
從圖 11-11 可以看出當鼠標對按鈕做出了相應的動作之后,監聽器獲取到相應的事
件對象,從而打印出動作所對應的事件名稱。
初學者可能會問,鼠標的點擊分為左鍵點擊和右鍵點擊,單擊和雙擊,而且還有滾輪。
上面只給出這些事件的處理,能滿足實際需求嗎? 答案是肯定的,MouseEvent 類中定義了很多常
量來標識鼠標動作。如下面的代碼所示。
public void mouseClicked(MouseEvent e) {
if(e.getButton()==e.BUTTON1){
System.out.println("鼠標左鍵單擊事件");
if(e.getButton()==e.BUTTON3){
System.out.println("鼠標右鍵單擊事件");
if(e.getButton()==e.BUTTON1){
System.out.println("鼠標中鍵單擊事件");
}
從上面的代碼可以看出,MouseEvent 類中針對鼠標的按鍵都定義了對應的常量,可
以通過 MouseEvent 對象的 getButton()方法獲取被操作按鍵的常量鍵值,從而判斷是哪個按鍵
的操作。另外,鼠標的點擊次數也可以通過 MouseEvent 對象的 getClickCount()方法獲取到。因
此,在鼠標事件中,可以根據不同的操作,做出相應的處理。
訪客的評論 2023/05/28 23:44
文中描述的是準確的嗎,如何報名!