Bonjour,

Je suis débutante en Java et j'ai pour but de contrôler les action de ma souris sur une image.

Je m'explique, j'affiche une image et choisis la localisation de la souris mais ensuite, je dois faire en sorte que la souris ne puisse pas sortir d'une certaine zone (délimitée en noir). Donc au contact de pixels noirs, la souris doit être stoppée.

Je n'arrive pas à créer cette partie du programme.

Quelqu'un saurait-il m'indiquer comment utiliser le MouseListener ?

Voici mon programme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.BorderLayout;
import java.awt.Graphics;
import java.awt.Image;
import javax.swing.JFrame;
import javax.swing.JPanel;
 
class GlobalConsoleFrame extends JFrame
{
    GlobalConsoleFrame()
    {
        setSize(1280, 1024);
        setTitle("Test");
        setContentPane(new AfficheImage("img.PNG"));
        getContentPane().setLayout(new BorderLayout());
        this.setVisible(true);
    }
}
 
class AfficheImage extends JPanel
{
    Image eau;
 
    AfficheImage(String s)
    {
        eau = getToolkit().getImage(s);
    }
 
    public void paintComponent(Graphics g)
    {
        super.paintComponent(g);
        g.drawImage(eau, 0, 0, getWidth(), getHeight(), this);
    }
}
 
public class ImagePanel {
 
    public ImagePanel() throws AWTException {
 
        Robot robot = new Robot();
        robot.setAutoDelay(5);
        robot.setAutoWaitForIdle(false);
 
        for (int i = 0; i < 14; i++) {
            robot.mouseMove(400+(20*i), 900);
        }
    }    
 
    public static void main(String[] args) throws AWTException
    {
        GlobalConsoleFrame test = new GlobalConsoleFrame();
        ImagePanel mouseCatchMe = new ImagePanel();
    }
}
Merci d'avance pour votre aide.