Fenetre plein ecran vers reduite
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... :mrgreen:
Code:
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");
}
} |