Re: peies to board????

Discussion in 'Java' started by Knute Johnson, May 31, 2008.

  1. beelzibub wrote:

    You are a pernicious troll. Go away!

    > ... i would like to get the pieces on the boar but am stumped:
    >
    > package chessbuard;
    >
    > import java.awt.*;
    > import java.awt.event.*;
    > import javax.swing.*;
    > //import javax.swing.event.*;
    >
    > class ChessBoard extends JFrame implements MouseListener,
    > MouseMotionListener {
    >
    > GridLayout Board = new GridLayout(8, 8);
    > int drag1, drag2;
    > int xMove, yMove, labelw, labelh;
    > JLabel label;
    > String[] manrow = {"Pawn0", "Pawn1", "Pawn2", "Pawn3", "Pawn4",
    > "Pawn5", "Pawn6", "Pawn7"};
    > String[] manrowx = {"Pawn0", "Pawn1", "Pawn2", "Pawn3", "Pawn4",
    > "Pawn5", "Pawn6", "Pawn7"};
    > String[] piecerow = {"Rook", "Knight", "Bishop", "Queen", "King",
    > "Bishop", "Knight", "Rook"};
    > String[] piecerowx = {"Rook", "Knight", "Bishop", "Queen", "King",
    > "Bishop", "Knight", "Rook"};
    >
    > // update these labels position, which is parent jpanel, at each move
    > JPanel[][] grids;
    > JLabel[][] pieces;
    > Dimension pieceSize = new Dimension(100, 100);
    > Container con;
    > Component DraggingComp;
    > GridLayout board;
    >
    > public ChessBoard() {
    > super("ChessBoard");
    > setDefaultCloseOperation(EXIT_ON_CLOSE);
    >
    > board = new GridLayout(8, 8);
    > board.setHgap(4);
    > board.setVgap(4);
    > Dimension boardSize = new Dimension(800, 800);
    > con = getContentPane();
    > new GridChessBoard();
    > con.addMouseListener(this);
    > con.addMouseMotionListener(this);
    > grids = new JPanel[8][8];
    > pieces = new JLabel[8][8];
    > label = new JLabel("Pawn3");
    > Dimension d = label.getPreferredSize();
    > labelw = d.width;
    > labelh = d.height;
    > label.setBounds(10, 10, labelw, labelh);
    > setDefaultCloseOperation(EXIT_ON_CLOSE);
    >
    > //setVisible(true);
    > for (int i = 0; i < 8; ++i) {
    > for (int j = 0; j < 8; ++j) {
    > addSquares(i, j);
    > }
    > }
    >
    > setSize(boardSize);
    > // setVisible(true);
    > } // end constructor
    >
    > public JFrame addAction(JFrame frame) {
    > frame.getContentPane().addMouseMotionListener(this);
    > return frame;
    > }
    >
    > public void seeIt(Component c) {
    > con.add(c);
    > ((JPanel) con).revalidate();
    > con.setVisible(true);
    > }
    >
    > public void moveComponent(Component c, int newX, int newY, int
    > width, int height) {
    > System.out.println("in moveComponent");
    > c.setBounds(newX, newY, labelw, labelh);
    > c.setSize(pieceSize); // debug, just to see
    > con.add(c);
    > ((JPanel) con).revalidate();
    > con.setVisible(true);
    > }
    >
    > public String getMan(int i) {
    > return manrow;
    > }
    >
    > public String getPiece(int i) {
    > return piecerow;
    > }
    >
    > public boolean isOdd(int i) {
    > return i % 2 != 0;
    > }
    >
    > public boolean isEven(int i) {
    > return i % 2 == 0;
    > }
    >
    > public JLabel setBlue(JLabel b1) {
    > b1.setBackground(Color.blue);
    > return b1;
    > }
    >
    > public JLabel setYellow(JLabel b1) {
    > b1.setBackground(Color.yellow);
    > return b1;
    > }
    >
    > public void addColors() {
    > for (int i = 0; i < 64; i++) {
    > JLabel square = new JLabel("see");
    > add(square);
    > int row = (i / 8) % 2;
    > if (row == 0) {
    > square.setBackground(i % 2 == 0 ? Color.blue :
    > Color.yellow);
    > } else {
    > square.setBackground(i % 2 == 0 ? Color.yellow :
    > Color.blue);
    > }
    > }
    > }
    >
    > public JLabel addBlankRow(int i, int j) {
    > JLabel square = new JLabel();
    > if (isEven(j)) {
    > square.setBackground(i % 2 == 0 ? Color.yellow : Color.blue);
    > square.setName("blank"); // added
    > } else {
    > square.setBackground(i % 2 == 0 ? Color.blue : Color.yellow);
    > square.setName("blank"); // added
    > }
    > return square;
    > }
    >
    > public JLabel addManRow(int i, int j) {
    > String[] m = i == 1 ? manrowx : manrow;
    > JLabel square = new JLabel();
    > square.setLayout(new FlowLayout());
    >
    > int col = j + 1;
    > if (isEven(col)) {
    > square.setBackground(i % 2 == 0 ? Color.blue : Color.yellow);
    > square.add(setYellow(new JLabel(m[j])), JLabel.CENTER);
    > square.setName(m[j]);// added
    > } else {
    > square.setBackground(i % 2 == 0 ? Color.yellow : Color.blue);
    > square.add(setBlue(new JLabel(m[j])), JLabel.CENTER);
    > square.setName(m[j]); // added
    > }
    > return square;
    > }
    >
    > public JLabel addPieceRow(int i, int j) {
    >
    > String[] m = i == 1 ? piecerow : piecerowx;
    > JLabel square = new JLabel();
    > square.setLayout(new FlowLayout());
    >
    >
    > int col = j;
    > if (isEven(col) && (col < 8)) {
    >
    > square.add(setYellow(new JLabel(m[j])), JLabel.CENTER);
    > square.setBackground(Color.yellow);
    > square.setName(m[j]); // added
    > } else {
    > square.add(setBlue(new JLabel(m[j])), JLabel.CENTER);
    > square.setBackground(Color.blue);
    > square.setName(m[j]); // added
    >
    > }
    > return square;
    > }
    >
    > public JLabel addPieceRowx(int i, int j) {
    > String[] m = i == 1 ? manrowx : manrow;
    > JLabel square = (new JLabel(m[j]));
    > square.setLayout(new FlowLayout());
    >
    > int col = j + 1;
    > if (isEven(col)) {
    > square.setBackground(Color.yellow);
    > square.add(setYellow(new JLabel(m[j])), JLabel.CENTER);
    > square.setName(m[j]); // added
    > } else {
    > square.setBackground(Color.blue);
    > square.add(setBlue(new JLabel(m[j])), JLabel.CENTER);
    > square.setName(m[j]); // added
    > }
    > return square;
    > }
    >
    > public JLabel addManRowx(int i, int j) {
    > String[] m = i == 1 ? manrowx : manrow;
    > JLabel square = new JLabel();
    > square.setLayout(new FlowLayout());
    >
    > int col = j + 1;
    > if (isEven(col)) {
    > square.setBackground(Color.blue);
    > square.add(setBlue(new JLabel(m[j])), JLabel.CENTER);
    > square.setName(m[j]); // added
    > } else {
    > square.setBackground(Color.yellow);
    > square.add(setYellow(new JLabel(m[j])), JLabel.CENTER);
    > square.setName(m[j]); // added
    > }
    > return square;
    > }
    >
    > public void addSquares(int i, int j) {
    >
    > JLabel square = new JLabel();
    > int col = j;
    > int row = i;
    > switch (row) {
    > case 0:
    > square = addPieceRow(row, col);
    > break;
    > case 1:
    > square = addManRow(row, col);
    > break;
    > case 2:
    > square = addBlankRow(row, col);
    > break;
    > case 3:
    > square = addBlankRow(row, col);
    > break;
    > case 4:
    > square = addBlankRow(row, col);
    > break;
    > case 5:
    > square = addBlankRow(row, col);
    > break;
    > case 6:
    > square = addManRowx(row, col);
    > break;
    > case 7:
    > square = addPieceRowx(row, col);
    > break;
    > }
    > con.add(square);
    > return;
    > }
    >
    > public void mousePressed(MouseEvent me) {
    > System.out.println("in mouse pressed");
    >
    > // get orriginal coordinates and set text
    > xMove = me.getX();
    > yMove = me.getY();
    > DraggingComp = con.getComponentAt(xMove, yMove);
    > }
    >
    > public void mouseDragged(MouseEvent me) {
    >
    > System.out.println("in mouse dragged");
    > DraggingComp = con.getComponentAt(xMove, yMove);
    > if (DraggingComp == null) {
    > return;
    > }
    > xMove = me.getX();
    > yMove = me.getY();
    > //moveComponent(findComponentAt(xMove, yMove), xMove, yMove,
    > labelw, labelh);
    > }
    >
    > public void mouseReleased(MouseEvent me) {
    > }
    >
    > public void mouseEntered(MouseEvent me) {
    > }
    >
    > public void mouseExited(MouseEvent me) {
    > }
    >
    > public void mouseMoved(MouseEvent me) {
    > }
    >
    > public void mouseClicked(MouseEvent me) {
    > }
    > static class GridChessBoard { // must be static???
    >
    > JFrame frame;
    > Container con;
    >
    > public GridChessBoard() {
    > frame = new JFrame("Chess Board made by Hiroshi Iwatani");
    > frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    > con = frame.getContentPane();
    >
    > con.setLayout(new GridLayout(8, 8));
    > for (int i = 0; i < 64; i++) {
    > JPanel square = new JPanel(new BorderLayout());
    > con.add(square);
    >
    > int row = (i / 8) % 2;
    > if (row == 0) {
    > square.setBackground(i % 2 == 0 ? Color.blue :
    > Color.yellow);
    > } else {
    > square.setBackground(i % 2 == 0 ? Color.yellow :
    > Color.blue);
    > }
    >
    > frame.setSize(650, 650);
    > frame.setVisible(true);
    > }
    > }
    > }
    >
    >
    > public static void main(String[] args){
    > //GridChessBoard gcb = new GridChessBoard();
    > new ChessBoard();
    > }
    > }



    --

    Knute Johnson
    email s/knute/nospam/

    --
    Posted via NewsDemon.com - Premium Uncensored Newsgroup Service
    ------->>>>>>http://www.NewsDemon.com<<<<<<------
    Unlimited Access, Anonymous Accounts, Uncensored Broadband Access
    Knute Johnson, May 31, 2008
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Seth
    Replies:
    5
    Views:
    6,042
    Asfandyar Khan
    Jul 1, 2003
  2. Clyde
    Replies:
    2
    Views:
    2,006
    Clyde
    Feb 15, 2004
  3. Steve
    Replies:
    0
    Views:
    568
    Steve
    Feb 26, 2004
  4. Don Golding
    Replies:
    2
    Views:
    729
    Iwo Mergler
    Apr 14, 2004
  5. Vijay
    Replies:
    0
    Views:
    885
    Vijay
    Dec 30, 2009
Loading...

Share This Page