2017-12-02 236 views
-3

我對Java很新,我想嘗試在BlueJ中做一件事,它需要BlueJ知道鼠標何時被點擊,並能夠確定鼠標在x,y平面上的座標。如何接受Java中的鼠標輸入?

在我的代碼中,我看過一些導入的類和類似Scanner和Graphics的東西,所以它可能是沿着這些線的東西,但我不確定。

我主要是需要

  • 事情導入(如果它是需要進口的事)

  • 如何使它告訴我們,如果鼠標點擊

  • 如何讓它能夠告訴我在被問及時鼠標的x,y位置(例如,我必須參考什麼類的方法來找到它)

我有這個之後,我會努力製作我的程序。謝謝!

編輯:根據要求,這裏是我的嘗試

java.awt.event.MouseAdapter 

public class main 
{ 
MouseAdapter test = new MouseAdapter(); 

} 

public void mouseMoved(test e) 
{ 
    System.out.println("hey your mouse moved"); 
} 

我清楚地做一些可怕的錯誤,以達到你的目的是使用的Java Swing

+0

你使用的是什麼UI框架? –

+0

我不知道。我使用BlueJ來讓我編譯Java代碼。我認爲它的JDK? – Koopi

+0

包括你的代碼到目前爲止它會有很大的幫助 – dave

回答

0

的一種方式。下面的代碼將打印出一份聲明中如果鼠標所創建的窗口中移動:

public static void main(String[] args) { 
     SwingUtilities.invokeLater(() -> { 
      JFrame jFrame = new JFrame(); 
      jFrame.setSize(720,480); 
      jFrame.setVisible(true); 
      jFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 
      jFrame.getContentPane().addMouseMotionListener(new MouseMotionListener() { 
       @Override 
       public void mouseDragged(MouseEvent mouseEvent) { 
        System.out.println("STUFF"); 
       } 

       @Override 
       public void mouseMoved(MouseEvent mouseEvent) { 
        System.out.println("STUFF"); 

       } 
      }); 

     }); 
    } 

這不是一個理想的解決方案,但我希望它可以幫助你在正確的direciton看。

相關問題