2011-05-24 78 views
0

拖動鼠標後釋放鼠標時是否應該調用mouseReleased()事件?mouseReleased()在mouseDragged()事件後未被調用?

我需要調用mouseReleased()來重置mouseDragged()中使用的一些變量,但它似乎永遠不會被調用。

+0

你鬆開鼠標的組件裏面你正在聆聽? – 2011-05-24 17:49:28

+2

另外,你是否使用MouseListener或MouseMotionListener,或兩者? – 2011-05-24 17:51:07

+0

我同意保羅 - 您可能使用MouseMotionListener,但不使用MouseListener。顯示代碼會有幫助,你認爲? – 2011-05-24 18:40:23

回答

0

檢查Oracle tutorial的同時實現監聽一個簡單的方法,保羅要求在他的評論

基本上(從上面的鏈接修改):

//where initialization occurs: 
MyListener myListener = new MyListener(); 
addMouseListener(myListener); 
addMouseMotionListener(myListener); 

private class MyListener extends MouseInputAdapter { 
    public void mousePressed(MouseEvent e) { 
    int x = e.getX(); 
    int y = e.getY(); 
    // you may not need this method 
    } 

    public void mouseDragged(MouseEvent e) { 
    // do your code 
    } 

    public void mouseReleased(MouseEvent e) { 
    // reset your variables 
    } 
相關問題