cours0708/G5a/MainFrame.java

127 lines
3.2 KiB
Java

package ihm;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JToolBar;
public class MainFrame extends JFrame {
/** le label de la barre de status */
private JLabel jLabelStatus = new JLabel("");
/** le panel de dessin central */
private JPanel jPanelDessin = new JPanel();
/**
* <p>Constructeur par défaut.</p>
*
*/
public MainFrame() {
// ********************************************************************** //
// création du menu Fichier
JMenu jMenuFichier = new JMenu("Fichier");
JMenuItem jMenuFichier_Ouvrir = new JMenuItem("Ouvrir");
JMenuItem jMenuFichier_Sauvegarder = new JMenuItem("Sauvegarder");
JMenuItem jMenuFichier_Quitter = new JMenuItem("Quitter");
jMenuFichier.add(jMenuFichier_Ouvrir);
jMenuFichier.add(jMenuFichier_Sauvegarder);
jMenuFichier.addSeparator();
jMenuFichier.add(jMenuFichier_Quitter);
// création du menu Edition
JMenu jMenuEdition = new JMenu("Edition");
JMenuItem jMenuEdition_Preferences = new JMenuItem("Préférences");
jMenuEdition.add(jMenuEdition_Preferences);
// création de la barre de menus
JMenuBar jMenuBar = new JMenuBar();
jMenuBar.add(jMenuFichier);
jMenuBar.add(jMenuEdition);
// création de la barre de status
JPanel jPanelStatus = new JPanel();
jPanelStatus.add(jLabelStatus);
// création de la barre d'outils
JButton jButton_Pinceau = new JButton("P");
JButton jButton_Rectangle = new JButton("R");
JButton jButton_Cercle = new JButton("C");
JToolBar jToolBar = new JToolBar(JToolBar.VERTICAL);
jToolBar.add(jButton_Pinceau);
jToolBar.add(jButton_Rectangle);
jToolBar.add(jButton_Cercle);
// panel de dessin
jPanelDessin.setBackground(Color.WHITE);
// construction de la maquette
this.setLayout(new BorderLayout());
this.add(jToolBar, BorderLayout.WEST);
this.add(jPanelDessin, BorderLayout.CENTER);
this.add(jPanelStatus, BorderLayout.SOUTH);
this.setJMenuBar(jMenuBar);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(600, 400);
this.setLocation(200,200);
this.setTitle("Mon Paint");
// ********************************************************************** //
// menu Fichier - bouton Quitter
jMenuFichier_Quitter.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ev) {
menuFichier_Quitter();
}
});
// menu Fichier - bouton Ouvrir
jMenuFichier_Ouvrir.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ev) {
menuFichier_Ouvrir();
}
});
}
/**
* <p>Action du bouton Quitter du menu Fichier.<.p>
*
*/
public void menuFichier_Quitter() {
System.exit(0);
}
/**
* <p>Action du bouton Ouvrir du menu Fichier.<.p>
*
*/
public void menuFichier_Ouvrir() {
this.setStatus("Ouverture en cours...");
}
/**
*
*/
public void setStatus(String status) {
this.jLabelStatus.setText(status);
}
static public void main(String[] args) {
new MainFrame().setVisible(true);
}
}