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 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155
| class Dessin extends JFrame implements WindowListener,ActionListener
{
// attribut pour le menu
private JMenuBar barreMenus;
private JMenu Fichier,Couleur,Epaisseur,Trait,Aide;
private JMenuItem Ouvrir,Enregistrer;
private boolean fichierOuvert, infoCopiee;
private String nomFichier;
// attribut pour dessiner
private Panneau panneau;
public Dessin()
{
super("PAINT") ;
// création d'une barre de menu
barreMenus = new JMenuBar() ;
setJMenuBar(barreMenus) ;
// ajout de la barre de menu dans la fenêtre
// création d'un menu Fichier et de ses options
Fichier = new JMenu("Fichier");
Ouvrir = new JMenuItem("Ouvrir");
barreMenus.add(Fichier);
Fichier.add(Ouvrir);
// création d'un menu Aide
Aide = new JMenu("Aide");
A_propos = new JMenuItem("A propos");
barreMenus.add(Aide);
Aide.add(A_propos);
// Definition pour dessiner
Container contenu = this.getContentPane(); //this -> instance dExemple
panneau = new Panneau();
panneau.setBackground(Color.YELLOW);
contenu.add(panneau);
//comment on va fermer cette fenetre
this.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
this.addWindowListener(this);
// Recuperer la taille de l'ecran
Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize();
// positionner ma fenetre
int xFenetre, yFenetre;
int largeurFenetre, hauteurFenetre;
xFenetre = dimension.width /2;
yFenetre = dimension.height /2;
hauteurFenetre = dimension.width /2;
largeurFenetre = dimension.height/2;
this.setBounds(xFenetre, yFenetre, largeurFenetre, hauteurFenetre);
this.setVisible(true);
}
/* Implementations des actions a faire */
public void actionPerformed(ActionEvent e)
{
Object source = e.getSource();
// Traitement de l'ouverture ici pourquoi mes action ne fonctionne pas
// ouvrir un fichier via l'exporateur windows
if (source == Ouvrir)
{
FileDialog fd;
String nomRep,nomF;
fd = new FileDialog(this, "selection d'un fichier");
fd.setVisible(true);
nomRep = fd.getDirectory();
nomF = fd.getFile();
}
// traitement de l'enregistrement
if (source == Enregistrer)
{
}
// traitement de Quitter
if (source == Quitter)
{
System.exit(0);
}
// traitement de A_propos
if (source == A_propos)
{
}
}
/*---------------------------------------------------*/
/* Methode pour interface WindowListener */
/*---------------------------------------------------*/
public void windowClosed(WindowEvent event)
{
System.exit(0);
}
public void windowActivated(WindowEvent event) { }
public void windowDeactivated(WindowEvent event) { }
public void windowIconified(WindowEvent event) { }
public void windowDeiconified(WindowEvent event) { }
public void windowOpened(WindowEvent event) { }
public void windowClosing(WindowEvent event)
{
System.exit(0);
}
/*-------------------------------------------------------*/
/* Methode principale */
/*-------------------------------------------------------*/
public static void main(String args[])
{
JFrame fen = new Dessin();
fen.setVisible(true);
}
}
class Panneau extends JPanel
{
// Constructeur
public Panneau()
{
}
// ordre de dessin que sur des objets graphiques
public void paintComponent(Graphics g)
{
super.paintComponent(g);
}
} |
Partager