Bonjour,
En attribuant un curseur sur une JFrame plein écran, j'ai eu la désagréable surprise de m'apercevoir que le curseur n'est pas pris en compte sur une bordure de 2, 3 pixels à droite et à gauche.
Voici un exemple du problème :
Il vous suffit de mettre le pointeur complétement à droite ou à gauche pour constater (ça ne le fait pas verticalement). Cliquez sur le frame pour quitter.
Comment régler ça ?
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 import java.awt.Component; import java.awt.Cursor; import java.awt.GraphicsDevice; import java.awt.GraphicsEnvironment; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.JFrame; @SuppressWarnings("serial") public class Test extends JFrame { public static void main(String[] args) { GraphicsDevice device = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice(); Test frame = new Test(); device.setFullScreenWindow(frame); } public Test() { setCursor(this, Cursor.CROSSHAIR_CURSOR); addMouseListener(new MouseAdapter() { @Override public void mousePressed(MouseEvent e) { System.exit(0); } }); setVisible(true); } public static void setCursor(Component component, int curseur) { component.setCursor(Cursor.getPredefinedCursor(curseur)); } }
Petite précision, je suis sous Linux Ubuntu, je sais pas si c'est le même comportement sous Win.
Partager