package PremierEtapes;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class Graph extends JFrame {
private static final long serialVersionUID = -3875036114703032342L;
/* Construction de l'interface graphique */
public Graph() {
//Defint un titre pour notre fenetre
super( "Interface graphique" );
// Definir sa taillle
this.setSize(600,400);
//se positionner au centre
this.setLocationRelativeTo( null );
//Terminer la processus lorsqu'on clique sur le croix rouge
this.setDefaultCloseOperation( DISPOSE_ON_CLOSE );
// Construction et injection de la barre de menu
this.setJMenuBar( this.MenuBar() );
}
// Cette action permet de Quitter la fenetre lorsqu'on clique sur le sous menu
exit
static class CloseListerner implements ActionListener{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
/* Methode de construction de la barre de menu */
private JMenuBar MenuBar() {
// La barre de menu
JMenuBar menuBar = new JMenuBar();
// Definition du menu deroulant "File" et de son contenu
JMenu mnuFile = new JMenu( "Fichier" );
JMenuItem mnuNewFile = new JMenuItem( "Voir Graph" );
mnuNewFile.setIcon( new ImageIcon( "icons/new.png" ) );
mnuNewFile.addActionListener(new Action() );
mnuFile.add(mnuNewFile);
mnuFile.addSeparator();
JMenuItem mnuOpenFile = new JMenuItem( "Ouvrir Fichier ..." );
mnuOpenFile.setIcon( new ImageIcon( "icons/open.png" ) );
mnuOpenFile.addActionListener( this::mnuNewListener );
mnuFile.add(mnuOpenFile);
JMenuItem mnuSaveFile = new JMenuItem( "Sauvegarder Fichier ..." );
mnuSaveFile.setIcon( new ImageIcon( "icons/save.png" ) );
mnuSaveFile.addActionListener( this::mnuNewListener );
mnuFile.add(mnuSaveFile);
JMenuItem mnuSaveFileAs = new JMenuItem( "Sauvegarder sous Fichier ..." );
mnuSaveFileAs.setIcon( new ImageIcon( "icons/save_as.png" ) );
mnuSaveFileAs.addActionListener( this::mnuNewListener );
mnuFile.add(mnuSaveFileAs);
mnuFile.addSeparator();
JMenuItem mnuExit = new JMenuItem( "Quitter" );
mnuExit.setIcon( new ImageIcon( "icons/exit.png" ) );
mnuExit.addActionListener(new CloseListerner());
mnuFile.add(mnuExit);
menuBar.add(mnuFile);
// Definition du menu deroulant "Edit" et de son contenu
JMenu mnuEdit = new JMenu( "Editeur" );
JMenuItem mnuUndo = new JMenuItem( "Annuler" );
mnuUndo.setIcon( new ImageIcon( "icons/undo.png" ) );
mnuEdit.add(mnuUndo);
JMenuItem mnuRedo = new JMenuItem( "Repeter" );
mnuRedo.setIcon( new ImageIcon( "icons/redo.png" ) );
mnuEdit.add(mnuRedo);
mnuEdit.addSeparator();
JMenuItem mnuCopy = new JMenuItem( "Copier" );
mnuCopy.setIcon( new ImageIcon( "icons/copy.png" ) );
mnuEdit.add(mnuCopy);
JMenuItem mnuCut = new JMenuItem( "Couper" );
mnuCut.setIcon( new ImageIcon( "icons/cut.png" ) );
mnuEdit.add(mnuCut);
JMenuItem mnuPaste = new JMenuItem( "Coller" );
mnuPaste.setIcon( new ImageIcon( "icons/paste.png" ) );
mnuEdit.add(mnuPaste);
menuBar.add(mnuEdit);
// Definition du menu deroulant "Help" et de son contenu
JMenu mnuHelp = new JMenu( "Aide" );
menuBar.add( mnuHelp );
return menuBar;
}
public void mnuNewListener( ActionEvent event ) {
JOptionPane.showMessageDialog( this, "Pas encore !" );
}
public static void main(String[] args) {
//Creer une Fenetre
Graph frame = new Graph();
frame.setVisible(true);
JPanel panel = new JPanel();
frame.add(panel);
frame.setContentPane(panel);
panel.setBackground(Color.WHITE);
JButton voir = new JButton("Taper pour voir le graph");
panel.add(voir);
voir.addActionListener(new Action());
}
//Cet Action permet d'afficher le graph
static class Action implements ActionListener{
public void actionPerformed(ActionEvent e)
{
Graph frame = new Graph();
frame.setVisible(true);
JPanel panel = new JPanel();
frame.add(panel);
Formes h = new Formes();
frame.setContentPane(h);
frame.setBackground(Color.PINK);