Citation :
package agl;
/*
* Agl.java
*
* Created on 11 janvier 2007, 21:25
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
/**
*
* @author keub
*/
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JToolBar;
import javax.swing.border.EtchedBorder;
public class Agl extends JFrame implements ActionListener{
private JPanel container = null;//Déclaration de lobjet JPanel
private FlowLayout layout = null ;//Déclaration de notre layout
//Composants de l'agl
private JButton DDD = null ;//le bouton dictionnaire de données
private JButton MCD = null ;//le bouton MCD
private JButton MLD = null ;//le bouton MLD
private JButton essai = null ;//le bouton essai du container 2
//Composants du menu
private JMenuBar menuBar = null ; //la barre de menu
private JMenu menu1 = null ;// le menu1 qui sera en fait le menu " fichier "
private JMenuItem nouveau = null ;//item " nouveau " qui sera placé dans fichier
private JMenuItem enregistrer = null;//item " enregistrer " qui sera placé dans fichier
private JMenuItem quitter = null ;//item " quitter " qui sera placé dans fichier
private JMenu menu2 = null ;// le menu2 qui sera le menu " ? "
private JMenuItem aPropos = null ;//item qui sera placé dans "?"
private JMenuItem IconeNew = null ;
private JToolBar Icone = null;//bar icone
private int largeur;
private int hauteur;
// le constructeur de l'agl
public Agl(){
super();
build();// apel de la méthode build definit ci dessous
}
public static void main(String[] args){
Agl gui = new Agl();// on crée gui qui est du type Agl que l'on construit grace au constructeur
gui.setVisible(true);// on laffiche
}
// c ici que l'on construit la fenetre
private void build(){
menuBar = new JMenuBar();// on crée une barre de menu en haut de la fenetre
// c'est elle qui contiendra "fichier" et " ? " qui sont les menus
menu1 = new JMenu("Fichier" ) ;// on crée le premier menu "fichier"
nouveau = new JMenuItem("Nouveau" );// on instance l'item nouveau il sera appelé " Nouveau "
nouveau.addActionListener(this);// on lui definit une action qui sera definit dans une méthode action listener ci dessous ...
menu1.add(nouveau) ;
enregistrer = new JMenuItem("Enregistrer" );
enregistrer.addActionListener(this);// on lui definit une action qui sera definit dans une méthode action listener ci dessous ...
menu1.add(enregistrer) ;
//on fait de même avec l'item "quitter"
quitter = new JMenuItem("Quitter" );
quitter.addActionListener(this);
menu1.add(quitter) ;
// on ajoute ensuite le menu1 a la barre de menu
menuBar.add(menu1) ;
// maintenant on s'occupe du deuxieme menu "menu2'
menu2 = new JMenu("?" ) ;
aPropos = new JMenuItem("A propos" ) ;
aPropos.addActionListener(this) ;
menu2.add(aPropos) ;
menuBar.add(menu2) ;
this.setJMenuBar(menuBar);// ajout de la barre de menu a la JFRAME
//bar icone :
Icone= new JToolBar();
IconeNew.setTooltipText("Nouveau Ctrl+N" );
IconeNew.setIcon(new ImageIcon("" ));
Icone.add(IconeNew);
Icone.setFloatable(false);
this.add(Icone);
//maintenant on va definir une taille a la fenetre un titre etc ...
this.setTitle("Agl - Projet Seconde Année" ); //On donne un titre à lapplication
Dimension tailleEcran = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
hauteur = (int)tailleEcran.getHeight();
largeur = (int)tailleEcran.getWidth();
this.setSize(largeur,hauteur-60); //On donne une taille à notre fenêtre
this.setLocationRelativeTo(null); //On centre la fenêtre sur lécran
this.setResizable(true) ; //On autorise la redimensionnement de lécran
this.setContentPane(getContainer()) ;//On lui dit de mettre le panel en fond ( le contenu )
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //On dit à lapplication de se fermer lors du clic sur la croix
}
// on va definir le contenu de la fenetre
private JPanel getContainer(){
container = new JPanel();
JPanel containerButton = new JPanel() ;//On crée notre objet
JPanel FS = new JPanel() ;//On crée notre objet
container.setLayout(null);// On applique le layout
containerButton.setLayout(null);// On applique le layout
containerButton.setBackground(Color.LIGHT_GRAY);//couleur de fond : gris ...
containerButton.setBorder(new EtchedBorder(5,Color.black,Color.white));
containerButton.setBounds(0,50,280,hauteur-110);
FS.setLayout(null);// On applique le layout
FS.setBackground(Color.white);//couleur de fond
FS.setBorder(new EtchedBorder(50,Color.black,Color.white));
FS.setBounds(280,50,largeur-280,hauteur-110);
container.add(containerButton);
container.add(FS);
//on ajoute les trois boutons
DDD = new JButton("Dictionnaire De Données" );// instanciation du boutton
DDD.setForeground(Color.WHITE);
DDD.setBackground(Color.black);
DDD.setBounds(10,10,250,25);
DDD.addActionListener(this) ; // écouteur d'évemenment
containerButton.add(DDD);// On l'ajoute au conteneur
MCD = new JButton("Modèle Conceptuel De Données" );
MCD.setForeground(Color.WHITE);
MCD.setBackground(Color.black);
MCD.setBounds(10,110,250,25);
MCD.addActionListener(this) ;
containerButton.add(MCD);
MLD = new JButton("Modèle Logique De Données" );
MLD.setForeground(Color.WHITE);
MLD.setBackground(Color.black);
MLD.setBounds(10,210,250,25);
MLD.addActionListener(this) ;
containerButton.add(MLD);
return container ;
}
//les actions a faire lorsque l'on clique sur les boutton
public void actionPerformed(ActionEvent e){
if(e.getSource() == DDD){
// lorsque l'on clique sur Dictionnaire de données
}else if(e.getSource() == quitter){//sur quitter
System.exit(0);//Exit ...
}else if(e.getSource() == aPropos){//Lorsque l'on clique sur a propos dans le menu "?"
JOptionPane.showMessageDialog(null,"Ce programme a été développé par ..." );
}
}
}
|