From c5db8c437ef6b59c2092926ab67e6d4277aac0e5 Mon Sep 17 00:00:00 2001 From: Arnaud Giersch Date: Fri, 17 Oct 2014 14:09:50 +0200 Subject: [PATCH] Make the JPanel listen for mouse events!. --- DrawingWindow.java | 4 ++-- Test.java | 13 ++++++++++--- overview.html | 4 ++++ 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/DrawingWindow.java b/DrawingWindow.java index b292dc7..fe13798 100644 --- a/DrawingWindow.java +++ b/DrawingWindow.java @@ -34,7 +34,7 @@ import javax.swing.JPanel; * possible de fermer la fenêtre via le gestionnaire de fenêtres. * * @author Arnaud Giersch <arnaud.giersch@univ-fcomte.fr> - * @version 20141014 + * @version 20141017 */ public class DrawingWindow { @@ -743,7 +743,7 @@ public class DrawingWindow { frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); frame.addWindowListener(new DWWindowHandler()); frame.addKeyListener(new DWKeyHandler()); - frame.addMouseListener(new DWMouseHandler()); + panel.addMouseListener(new DWMouseHandler()); frame.setLocationByPlatform(true); frame.setVisible(true); } diff --git a/Test.java b/Test.java index 65a891f..d3e4e62 100644 --- a/Test.java +++ b/Test.java @@ -45,9 +45,16 @@ class Test{ } w2.closeGraph(); - while (w1.waitMousePress(5 * 1000)) - System.out.println("[ " + w1.getMouseX() + " ; " + w1.getMouseY() + - " ] -- button " + w1.getMouseButton()); + System.out.println("Click anywhere on w1..."); + + while (w1.waitMousePress(5 * 1000)) { + int x = w1.getMouseX(); + int y = w1.getMouseY(); + System.out.println("[ " + x + " ; " + y + " ] - " + + w1.getMouseButton()); + w1.drawLine(x - 5, y, x + 5, y); + w1.drawLine(x, y - 5, x, y + 5); + } System.out.println("Done!"); } diff --git a/overview.html b/overview.html index bd8e2f3..3e9d112 100644 --- a/overview.html +++ b/overview.html @@ -39,6 +39,10 @@

Modifications

+-- ven. 17 oct. 2014 14:09:50 +0200
+
+        * Correction d'un décalage avec getMouse{X,Y}.
+
 -- lun. 14 oct. 2014 22:10:45 +0200
 
         * Ajout des méthodes setColor(int) et setBgColor(int).
-- 
2.20.1