2016-05-28 11 views
0

マウスの左ボタンをクリックしたときにx座標とy座標を表示するプログラムを作成しようとしていますが、機能しません。プログラムを実行すると、コンソールに自動的にx座標とy座標が表示されますが、マウスをクリックした後で調整を見たいと思っています。mouseClickedイベントの設定方法は?

import java.awt.*; 
import java.awt.event.*; 
import javax.swing.SwingUtilities; 

public class Simple { 
    public static void main(String[] args){ 
     Mouse maus = new Mouse(); 
     maus.mouseClicked(null); 
    } 
} 

セカンドファイルあなたは、代わりに(マウスがクリックされたときにそれが有効になります)GUIコンポーネントに追加のMouseListenerを書いて、あなたのコードでやっている

import java.awt.*; 
import java.awt.event.*; 

public class Mouse implements MouseListener { 
    public void mouseClicked(MouseEvent e) { 
     double mouseX = MouseInfo.getPointerInfo().getLocation().getX(); 
     double mouseY = MouseInfo.getPointerInfo().getLocation().getY(); 
     System.out.println(mouseX+" "+mouseY); 
    } 
    @Override 
    public void mouseEntered(MouseEvent arg0) {} 

    @Override 
    public void mouseExited(MouseEvent arg0) {} 

    @Override 
    public void mousePressed(MouseEvent arg0) {} 

    @Override 
    public void mouseReleased(MouseEvent arg0) {} 
} 

答えて

2

、あなたはそれを自分で呼ぶ。これは、プログラムを起動するときに実行される理由です。

GUIコンポーネントの1つでaddMouseListenerメソッドを使用してリスナーを登録する必要があります。

例については、hereもかなり良いガイドがあります。

+0

ありがとうございます。私はGUIフレームの代わりにユーザーウィンドウ領域からコーディネーションを取得したい。このチュートリアルでは、フレーム内の調整方法のみを示しています。分かりますか? – Ratety

+1

私はあなたのコード内の座標を取得する方法は正しいと思います。唯一の問題は、メソッドが呼び出されたときです –

関連する問題