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
|
/**
* MaFrame.java
* La fenetre Principale de l'application.
*/
public class MaFrame extends JFrame{
/** --- Attributs statiques --- */
/** L'instance de la fenetre elle meme */
private static MaFrame maFrame;
/* --- Attributs --- */
/** Les panels*/
private JPanel panelGlobal = new JPanel();
/** Le panel de la partie du bas. */
private HautFrame hautFrame;
/** Le panel de la partie du haut. */
private BasFrame basFrame;
/** Le menu de la fenetre. */
private MenuFenetre menuFenetre;
/* --- Constructors --- */
/**
* Crée une nouvelle instance de la fenetre.
*/
private MaFrame(){
super("DI manager");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
/* --- Accessors --- */
public HautFrame getHautFrame(){return hautFrame;}
public BasFrame getBasFrame(){return basFrame;}
/* --- Methods statiques --- */
/**
* Permet de récupérer la fenêtre, au premier appel crée celle-ci, sinon
* retourne elle-meme.
* @return La fenetre Principale : MaFrame.
*/
public static MaFrame getMaFrame() {
if (maFrame == null) {
maFrame = new MaFrame();
}
return maFrame;
}
/** --- Methodes --- */
/**
* Initialise les menu, le contenu de la fenetre, le timer...
*/
public void init(){
/* initialisation du Timer*/
new BoucleDeLecture();
/* initialisation du menu*/
menuFenetre = new MenuFenetre();
setJMenuBar(menuFenetre); //on insére les Menus
/*Initialisation du layout*/
getContentPane().setLayout(new BorderLayout());
panelGlobal.setLayout(new BorderLayout());
Border raisedbevel = BorderFactory.createRaisedBevelBorder();
Border loweredbevel = BorderFactory.createLoweredBevelBorder();
addComponentListener(new ComponentAdapter() {
public void componentResized(ComponentEvent e) {
resizeFrame();
}
});
JDesktopPane desktop = new JDesktopPane();
desktop.setPreferredSize(new Dimension(800, 600)) ;
desktop.setDesktopManager(new ImmobileDesktopManager());
desktop.setBackground(new Color(255,255,255));
/*fenetre du haut*/
hautFrame = new HautFrame();
desktop.add(hautFrame);
/*fenetre du bas*/
basFrame = new BasFrame();
desktop.add(basFrame);
panelGlobal.add(desktop,BorderLayout.CENTER);
getContentPane().add(panelGlobal,BorderLayout.CENTER);
/*barre d'état */
JPanel barreEtat = new JPanel();
barreEtat.setBorder(BorderFactory.createCompoundBorder(raisedbevel, loweredbevel));
getContentPane().add(barreEtat,BorderLayout.PAGE_END);
pack();
}
public void resizeFrame() {
int width = panelGlobal.getSize().width;
int height = panelGlobal.getSize().height;
hautFrame.setSize(width,height/2);
hautFrame.setLocation(0,0);
basFrame.setSize(width,height/2);
basFrame.setLocation(0,height/2);
}
} |
Partager