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
|
public class ColorPointV1 extends JPanel implements KeyListener {
// Constantes------------------------------------------------------------------
static int hauteurFenetre=530, largeurFenetre=509;
//Variables------------------------------------------------------------------
int ecart=3;
int i;
int largcase=100;
int xCurseur=0;
int y1=largcase;
int yCurseur=0;
int y2=largcase;
int xSelect;
int ySelect;
int xImage;
int yImage;
int début;
int tableau [][]= new int [5][5];
public ColorPointV1() {
super();
tableau[4][2]=1;
tableau[3][4]=1;
tableau[1][1]=2;
tableau[4][1]=2;
tableau[4][0]=3;
tableau[3][2]=3;
tableau[2][2]=4;
tableau[1][3]=4;
addKeyListener(this);
}
// Gestion des touches clavier----------------------------------------------------------------------------------------------------------
// Curseur à vide -----------------------------------------------------
public void keyReleased(KeyEvent e){
if (0<xCurseur & xCurseur<400) {
if((e.getKeyCode()==KeyEvent.VK_LEFT)) { xCurseur=xCurseur-100;}
if((e.getKeyCode()==KeyEvent.VK_RIGHT)) { xCurseur=xCurseur+100;}
}
if (0<yCurseur & yCurseur<400) {
if((e.getKeyCode()==KeyEvent.VK_UP)) { yCurseur=yCurseur-100;}
if((e.getKeyCode()==KeyEvent.VK_DOWN)) { yCurseur=yCurseur+100;}
}
if (xCurseur==0) {
if((e.getKeyCode()==KeyEvent.VK_RIGHT)) { xCurseur=xCurseur+100;}
}
if (yCurseur==0) {
if((e.getKeyCode()==KeyEvent.VK_DOWN)) { yCurseur=yCurseur+100;}
}
if (xCurseur==400) {
if((e.getKeyCode()==KeyEvent.VK_LEFT)) { xCurseur=xCurseur-100;}
}
if (yCurseur==400) {
if((e.getKeyCode()==KeyEvent.VK_UP)) { yCurseur=yCurseur-100;}
}
if((e.getKeyCode()==KeyEvent.VK_ENTER)) {
if (début==1){début=0;}
xSelect=xCurseur;ySelect=yCurseur;
}
}
public void keyPressed(KeyEvent e){}
public void keyTyped(KeyEvent e){}
//Animation-----------------------------------------------------------------------------------------------------------------------------
public void paintComponent(Graphics g)
{
Graphics2D g2 = (Graphics2D) g;
super.paintComponent(g2);
// Création des lignes -------------------------------------------
g2.setStroke(new BasicStroke(6));
for (i=0;i<=5;i++) {
g2.drawLine(i*largcase, 0, i*largcase, 5*largcase);
}
for (i=0;i<=5;i++) {
g2.drawLine(0, i*largcase, 5*largcase, i*largcase);
}
// Création du curseur--------------------------------------------
g2.setPaint(Color.blue);
g2.setStroke(new BasicStroke(6));
g2.drawRect(xCurseur, yCurseur, largcase, largcase);
// Création plan du jeu-------------------------------------------
// Initialisation des images--------------------------------
Image bleu1 = Toolkit.getDefaultToolkit().getImage("image/Bleu.jpg");
g2.drawImage(bleu1, 100+ecart, 100+ecart, this);
Image bleu2 = Toolkit.getDefaultToolkit().getImage("image/Bleu.jpg");
g2.drawImage(bleu2, 400+ecart, 100+ecart, this);
Image orange1 = Toolkit.getDefaultToolkit().getImage("image/Orange.jpg");
g2.drawImage(orange1, 300+ecart, 200+ecart, this);
Image orange2 = Toolkit.getDefaultToolkit().getImage("image/Orange.jpg");
g2.drawImage(orange2, 400+ecart, ecart, this);
Image violet1 = Toolkit.getDefaultToolkit().getImage("image/Violet.jpg");
g2.drawImage(violet1, 200+ecart, 200+ecart, this);
Image violet2 = Toolkit.getDefaultToolkit().getImage("image/Violet.jpg");
g2.drawImage(violet2, 100+ecart, 300+ecart, this);
Image vert1 = Toolkit.getDefaultToolkit().getImage("image/1.jpg");
g2.drawImage(vert1, 400+ecart, 200+ecart, this);
Image vert2 = Toolkit.getDefaultToolkit().getImage("image/1.jpg");
g2.drawImage(vert2, 300+ecart, 400+ecart, this);
// Création case sélectionné----------------------------------
Image select = Toolkit.getDefaultToolkit().getImage("image/Select.gif");
g2.drawImage(select, xSelect, ySelect, this);
// Déplacement après case selectionnée -----------------------
repaint();
}
public static void main(String[] args) {
JFrame frame = new JFrame("Color Point");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(largeurFenetre,hauteurFenetre);
ColorPointV1 panel = new ColorPointV1();
frame.setContentPane(panel);
frame.setVisible(true);
frame.setResizable(false);
panel.setFocusable(true); // Nécessaire pour prendre en compte les touches
}
} |
Partager