| 12
 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
 
 |  
/*
 * PanelGrille.java
 *
 * Created on 19 juillet 2007, 21:11
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */
 
package automate;
import javax.swing.*;
import java.awt.Graphics;
import java.awt.*;
import java.util.ArrayList;
/**
 *
 * @author Sébastien
 */
public class PanelGrille extends JPanel {
    private int vh = 625;
    private int vw = 875;
    private Graphics2D g2;
    private ArrayList listeLabelEtape;
    private JToggleButton jtb;
    private PanelGrille panelGrille;
    /** Creates a new instance of PanelGrille */
    public PanelGrille() {
        listeLabelEtape = new ArrayList();
    }
 
    public void paintComponent(Graphics g){
        g2=null;
        int h = vh;
        int w = vw;
        g.setColor(Color.white);
 
        g.fillRect(0,0,w,h);
        g.setColor(Color.BLACK);
 
        g2=(Graphics2D)g;
 
        g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
        g2.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_SPEED);
        g2.setRenderingHint(RenderingHints.KEY_ALPHA_INTERPOLATION,RenderingHints.VALUE_ALPHA_INTERPOLATION_SPEED);
 
        //Drawing the grid
 
        g2.setBackground(Color.white);
        g2.setColor(Color.BLUE);
        for(int i=0;i*25<=w;i++){
            if(i%5==0){
                g2.setStroke(new BasicStroke(2));
            }else{
                g2.setStroke(new BasicStroke(1));
            }
            g2.drawLine(25*i,0,25*i,h);
        }
        for(int i=0;i*25<=h;i++){
            if(i%5==0){
                g2.setStroke(new BasicStroke(2));
            }else{
                g2.setStroke(new BasicStroke(1));
            }
            g2.drawLine(0,25*i,w,25*i);
        }
        //Place et redessine les JToggleButton si il y en a.
        if(listeLabelEtape.size() > 0){
            System.out.println("Je dessine");
            jtb = (JToggleButton)listeLabelEtape.get(0);
//            panelGrille.add(jtb, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 40, 40));
            jtb.setBounds(40, 40, 40, 40);
        }
    }
 
//    public void dessinerLigne(int x1, int y1, int x2, int y2){
//        g2.setColor(Color.BLUE);
//        g2.drawLine(x1, y1, x2, y2);
//        repaint();
//    }
    // Mise à jour de la liste des JToggleButton et redessine le JPanel
    public void Rafraichir(ArrayList listeLabelEtape){
        this.listeLabelEtape = listeLabelEtape;
        repaint();
    }
 
    public void PointeurPanelGrille(PanelGrille p_PanelGrille){
        panelGrille = p_PanelGrille;
    }
} | 
Partager