Bonjour,

J'ai créé une fenêtre pour un jeu que j'affiche en mode plein écran (sans les bordures).

Je voudrais que l'utilisateur puisse réduire la fenêtre en appuyant sur Esc et que les bordures de fenêtre réapparaissent.

Mais je ne sais pas trop comment faire...

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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
 
public class Fenetre extends JFrame implements ActionListener,WindowListener,KeyListener
{	
	private boolean isFullscreen;
	private JFrame fenetre; 
 
	// Constructeur de fenêtre
 
	public Fenetre(String namef)
	{
		fenetre = new JFrame();
 
		isFullscreen=true;
 
		//On cree les panels a poser sur la fenetre
		JPanel panel=new JPanel();
 
		//On cree les boutons a placer
		JButton b1=new JButton("Jouer");
	    b1.addActionListener(this);
	    JButton b2=new JButton("Tout Fermer");
	    b5.addActionListener(this);
 
	    //On place tout sur les panels
	    panel.add(b1);
	    panel.add(b2);
 
	    //On ajoute les panels sur la fenetre
	    add(panel, BorderLayout.NORTH);
 
	    //Proprietes de la fenetre
	    setTitle(namef);
 
	    //La fenetre se met en plein ecran
	    setUndecorated(isFullscreen);
	    setExtendedState(this.MAXIMIZED_BOTH);
 
	    //La fenetre est attentive aux actions
	    addKeyListener(this);
	    addWindowListener(this);
 
	    //La fenetre est visible
	    setVisible(true);
	}
 
	// Surcharge du constructeur pour creer une fenetre sans boutons
	public Fenetre(boolean fullscreen)
	{		
		setUndecorated(fullscreen);
	    setExtendedState(this.MAXIMIZED_BOTH);
 
		addWindowListener(this);
		addKeyListener(this);
 
		setVisible(true);
	}
 
	//Actions a effectuer lorsqu'un evenement se produit (par exemple cliquer)
	public void actionPerformed(ActionEvent a)
    {
    	//On a clique sur le bouton Jouer
		if(a.getActionCommand()=="Jouer")
		{
			Son sj=new Son("Jouer.wav");
			sj.start();
			Jeu jeu=new Jeu();
		}
 
		else if (a.getActionCommand()=="Tout Fermer")
		{
			//Toutes les fenetres se ferment
			System.exit(0);
		}
    }
 
	public void keyPressed(KeyEvent k) 
	{}
 
	public void keyReleased(KeyEvent k) 
	{}
 
	public void keyTyped(KeyEvent k) 
	{
		if(k.getKeyCode()==k.VK_ESCAPE)
			this.setBounds(0,0,640,400);
                    ????
	}
 
	public void windowActivated(WindowEvent we) 
	{}
 
	public void windowClosed(WindowEvent we) 
	{}
 
	public void windowClosing(WindowEvent we) 
	{
		this.dispose(); //Pour conserver les autres fenetres
	}
 
	public void windowDeactivated(WindowEvent we) 
	{}
 
	public void windowDeiconified(WindowEvent we) 
	{}
 
	public void windowIconified(WindowEvent we) 
	{}
 
	public void windowOpened(WindowEvent we) 
	{}
 
	//Main
	public static void main (String args[])
	{
		//Creation de la fenetre principale
		Fenetre f=new Fenetre("Projet de Programmation Orientee Objet");
	}
}