Java chess square image -


i've asked question before , didn't answer.

i'm designing chessboard in java, success. need add background image pc each square on board, i've written alternate between blue , white.

what add code change that?

my code:

 import java.awt.*;  import java.awt.event.*;  import java.util.*;  import javax.swing.*;  public class chessboard extends jframe implements mouselistener, mousemotionlistener { jlayeredpane layeredpane; jpanel chessboard;  jlabel chesspiece; int xadjustment; int yadjustment;  public chessboard(){ dimension boardsize = new dimension(600, 600); //  use layered pane this application layeredpane = new jlayeredpane(); getcontentpane().add(layeredpane); layeredpane.setpreferredsize(boardsize); layeredpane.addmouselistener(this); layeredpane.addmousemotionlistener(this); //add chess board layered pane  chessboard = new jpanel(); layeredpane.add(chessboard, jlayeredpane.default_layer); chessboard.setlayout( new gridlayout(8, 8) ); chessboard.setpreferredsize( boardsize ); chessboard.setbounds(0, 0, boardsize.width, boardsize.height);  (int = 0; < 64; i++) { jpanel square = new jpanel( new borderlayout() ); chessboard.add( square );  int row = (i / 8) % 2; if (row == 0) square.setbackground( % 2 == 0 ? color.blue : color.white ); else square.setbackground( % 2 == 0 ? color.white : color.blue ); } jlabel piece = new jlabel( new imageicon("/users/downloads/pieces/rook.jpg") ); jpanel panel = (jpanel)chessboard.getcomponent(0); panel.add(piece); piece = new jlabel(new imageicon("/users/downloads/pieces/knight.jpg")); panel = (jpanel)chessboard.getcomponent(1); panel.add(piece); piece = new jlabel(new imageicon("/users/downloads/pieces/king.jpg")); panel = (jpanel)chessboard.getcomponent(2); panel.add(piece); piece = new jlabel(new imageicon("/users/downloads/pieces/queen.jpg")); panel = (jpanel)chessboard.getcomponent(3); panel.add(piece); piece = new jlabel(new imageicon("/users/downloads/pieces/bishop.jpg")); panel = (jpanel)chessboard.getcomponent(4);  panel.add(piece); piece = new jlabel(new imageicon("/users/downloads/pieces/knight.jpg"));  panel = (jpanel)chessboard.getcomponent(5);  panel.add(piece); piece = new jlabel(new imageicon("/users/downloads/pieces/bishop.jpg"));  panel =(jpanel)chessboard.getcomponent(6);  panel.add(piece); piece = new jlabel(new imageicon("/users/downloads/pieces/rook.jpg")); panel =(jpanel)chessboard.getcomponent(7); panel.add(piece); piece = new jlabel(new imageicon("/users/downloads/pieces/pawn.jpg"));  panel =(jpanel)chessboard.getcomponent(9);  panel.add(piece);  piece = new jlabel(new imageicon("/users/downloads/pieces/pawn.jpg"));  panel =(jpanel)chessboard.getcomponent(10);  panel.add(piece);  piece = new jlabel(new imageicon("/users/downloads/pieces/pawn.jpg"));  panel =(jpanel)chessboard.getcomponent(11);  panel.add(piece);  piece = new jlabel(new imageicon("/users/downloads/pieces/pawn.jpg"));  panel =(jpanel)chessboard.getcomponent(12);  panel.add(piece);  piece = new jlabel(new imageicon("/users/downloads/pieces/pawn.jpg"));  panel =(jpanel)chessboard.getcomponent(13);  panel.add(piece);  piece = new jlabel(new imageicon("/users/downloads/pieces/pawn.jpg"));  panel =(jpanel)chessboard.getcomponent(14);  panel.add(piece);  piece = new jlabel(new imageicon("/users/downloads/pieces/pawn.jpg"));  panel =(jpanel)chessboard.getcomponent(15);  panel.add(piece); piece = new jlabel(new imageicon("/users/downloads/pieces/pawn.jpg")); panel =(jpanel)chessboard.getcomponent(8);  panel.add(piece); } public void mousepressed(mouseevent e){ chesspiece = null; component c =  chessboard.findcomponentat(e.getx(), e.gety());  if (c instanceof jpanel)  return;  point parentlocation = c.getparent().getlocation(); xadjustment = parentlocation.x - e.getx(); yadjustment = parentlocation.y - e.gety(); chesspiece = (jlabel)c; chesspiece.setlocation(e.getx() + xadjustment, e.gety() + yadjustment); chesspiece.setsize(chesspiece.getwidth(), chesspiece.getheight()); layeredpane.add(chesspiece, jlayeredpane.drag_layer); } //move chess piece around public void mousedragged(mouseevent me) { if (chesspiece == null) return;  c hesspiece.setlocation(me.getx() + xadjustment, me.gety() + yadjustment); }   public void mousereleased(mouseevent e) {   if(chesspiece == null) return;    chesspiece.setvisible(false);   component c =  chessboard.findcomponentat(e.getx(), e.gety());    if (c instanceof jlabel){   container parent = c.getparent();   parent.remove(0);   parent.add( chesspiece );   }   else {   container parent = (container)c;   parent.add( chesspiece );   }    chesspiece.setvisible(true);   }    public void mouseclicked(mouseevent e) {    }   public void mousemoved(mouseevent e) {  }   public void mouseentered(mouseevent e){    }   public void mouseexited(mouseevent e) {    }    public static void main(string[] args) {   jframe frame = new chessboard();   frame.setdefaultcloseoperation(dispose_on_close );   frame.pack();   frame.setresizable(true);   frame.setlocationrelativeto( null );   frame.setvisible(true);  } } 

for each square, you'll want set image jpanel instead of changing color. how add image jpanel?


Comments

Popular posts from this blog

android - Get AccessToken using signpost OAuth without opening a browser (Two legged Oauth) -

org.mockito.exceptions.misusing.InvalidUseOfMatchersException: mockito -

google shop client API returns 400 bad request error while adding an item -