91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

鼠標事件監聽器的創建和使用

發布時間:2020-07-05 05:49:41 來源:網絡 閱讀:403 作者:何小俊love 欄目:網絡安全

    鼠標操作是圖形操作系統最常用操作,用戶使用鼠標單擊,雙擊,右擊,拖動等操作實現與軟件的交互。 鼠標事件監聽器 鼠標事件監聽器由MouseListener接口和MouseMotionListener接口定義,分別定義鼠標捕獲不同的鼠標操作方法。 MouseListener監聽器方法說明 mouseClicked(MouseEvent e) 處理鼠標單擊事件方法

mouseEntered(MouseEvent e) 鼠標進入組件區域時執行方法 mouseExited(MouseEvent e) 鼠標離開組件區域執行方法 mousePressed(MouseEvent e) 按下鼠標按鍵時執行方法 mouseRelease(MouseEvent e) 釋放鼠標按鍵時執行方法

MouseListener監聽器的方法,基本滿足大多數程序需求。

MouseMotionListener接口定義兩個有關鼠標移動和拖動事件的處理方法。 MouseMotionListener監聽器方法說明

 mouseMoved(MouseEvent e) 處理鼠標移動事件的方法 mouseDragged(MouseEvent e) 處理鼠標拖動事件的方法 鼠標事件處理 兩個鼠標事件監聽器中的方法都定義了MouseEvent類型的形參,MouseEvent類是鼠標事件類,是被監聽器捕獲的用戶操作所生成的事件對象,該實例對象包含了許多鼠標事件發生時的參數信息。例如鼠標的坐標位置,鼠標的按鍵等。

常用方法有: getButton() 返回更改了狀態的鼠標按鍵

getClickCount() 返回與此事件關聯的鼠標單擊次數

getLocationOnScreen() 返回鼠標相對于屏幕的絕對x,y坐標

getPoint() 返回事件相對于源組件的x,y坐標

translatePoint() 通過將事件坐標加上指定x,y偏移量,將事件坐標平移到新位置 以下代碼,演示了兩個接口的作用,通過讀代碼,就會理解到各自方法的作用:

 
import javax.swing.*; 
import java.awt.event.*; 
 
public class MyMouse extends JFrame { 
    public JLabel jl = new JLabel("鼠標暫無操作"); 
 
    public MyMouse() { 
        setBounds(100, 100, 350, 80); 
        getContentPane().add("South", jl); 
        addMouseListener(new MouseListener() { 
 
            public void mouseClicked(MouseEvent arg0) { 
                jl.setText("鼠標在界面中單擊了" + jl.getText() + arg0.getClickCount() 
                        + "次"); 
            } 
 
            public void mouseEntered(MouseEvent arg0) { 
                jl.setText("鼠標進入了窗體界面"); 
            } 
 
            public void mouseExited(MouseEvent arg0) { 
                jl.setText("鼠標離開了窗體界面"); 
            } 
 
            public void mousePressed(MouseEvent arg0) { 
                jl.setText("鼠標在窗體界面中按下了鍵" + arg0.getButton()); 
            } 
 
            public void mouseReleased(MouseEvent arg0) { 
                jl.setText("鼠標在窗體界面中釋放了鍵" + arg0.getButton()); 
            } 
 
        }); 
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    } 
 
    public static void main(String[] args) { 
        MyMouse test = new MyMouse(); 
        test.setVisible(true); 
    } 
 

以下代碼,演示了MouseMotionListener類,組件在界面中,可以拖動:

 
import javax.swing.*; 
import java.awt.FlowLayout; 
import java.awt.event.*; 
 
public class MyMouse extends JFrame { 
    public JButton jb = new JButton("鼠標可拖動按鈕"); 
    public JTextField jt = new JTextField(); 
 
    public MyMouse() { 
        jb.setBounds(100, 100, 330, 175); 
        jt.setColumns(20); 
        setBounds(100, 100, 350, 280); 
        getContentPane().setLayout(new FlowLayout()); 
        getContentPane().add(jb); 
        getContentPane().add(jt); 
        addMouseMotionListener(new MouseMotionListener() { 
 
            /** 
             * 處理鼠標拖動事件 
             * */
 
            public void mouseDragged(MouseEvent arg0) { 
                mouseMoved(arg0); 
                jb.setLocation(arg0.getPoint()); 
            } 
 
            /** 
             * 處理鼠標移動事件 
             * */
 
            public void mouseMoved(MouseEvent arg0) { 
 
                jt.setText(arg0.getPoint().toString()); 
 
            } 
 
        }); 
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    } 
 
    public static void main(String[] args) { 
        MyMouse test = new MyMouse(); 
        test.setVisible(true); 
    } 
 

 


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西丰县| 溧水县| 曲周县| 汝城县| 昆明市| 南投县| 临潭县| 南丹县| 镇雄县| 永修县| 绍兴市| 申扎县| 乌拉特中旗| 阿拉善右旗| 万荣县| 新化县| 巴里| 会东县| 长宁区| 游戏| 临猗县| 靖安县| 西峡县| 武功县| 碌曲县| 墨江| 尖扎县| 拉萨市| 任丘市| 天镇县| 涞源县| 洛浦县| 阿尔山市| 葫芦岛市| 环江| 浦北县| 溆浦县| 富锦市| 南投县| 名山县| 鞍山市|