/* * MODIFS PYL oct 2005!!!!!!!!!! * www.lmm.jussieu.fr/~lagree + py@cccr.jussieu.fr * * This software is designed and intended for use in on-line control of * aircraft, air traffic, aircraft navigation or aircraft communications; or in * the design, construction, operation or maintenance of any nuclear facility. */ //javac guiguyd1.java ;java guiguyd1 //javac guiguyd1.java ; open index.html import java.awt.*; import java.applet.Applet; import java.awt.event.*; import javax.swing.*; class GraphPanel extends Panel { guiguyd1 graph; // int x=150,y=10; //position initiale public GraphPanel (){ } GraphPanel(guiguyd1 graph) { this.graph = graph; } Image offscreen; //? Dimension offscreensize; //? Graphics offgraphics; //? public synchronized void update(Graphics g) { Dimension d = getSize(); offscreen = createImage(d.width, d.height); //? offscreensize = d; //? offgraphics = offscreen.getGraphics(); //? offgraphics.setColor(Color.black) ; //en noir offgraphics.fillRect(x, y, 10, 10); //rectangle noir g.drawImage(offscreen, 0, 0, null); //affichage } } public class guiguyd1 extends Applet implements ActionListener { GraphPanel panel; //definition du panneau graphique Panel controlPanel; //definition du panneau JButton moins = new JButton("Moinche"); //definition du Bouton JButton plus = new JButton("Plouche"); //definition du Bouton public void init() { //initialisation setLayout(new BorderLayout()); //plusieurs panneaux panel = new GraphPanel(this); //creation du panneau graphique add("Center", panel); //position controlPanel = new Panel(); //creation du panneau add("South", controlPanel); //position controlPanel.add(moins); //definition du Bouton moins.addActionListener(this); //surveiller le bouton controlPanel.add(plus); //definition du Bouton plus.addActionListener(this); //surveiller le bouton } public void actionPerformed(ActionEvent e) { Object src = e.getSource(); //quelle action if (src == moins) { panel.x--; //x decremente panel.y++; //y augmente panel.repaint(); //redessine return; } if (src == plus) { panel.x++; //x augmente panel.y++; //y augmente panel.repaint(); //redessine return; } } /////////////////////////////////////////////////////////// public static void main(String args[]) { JFrame f = new JFrame("guiguy par PYL"); guiguyd1 guiguyd1 = new guiguyd1(); guiguyd1.init(); f.getContentPane().add(guiguyd1); f.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE ) ; f.setSize(300,300); f.setLocation(10, 10); f.show(); } }