ChessB oard
.... i was working on the below code when i ran
into some imence social problems and had had to
put it aside. now i must restart. any tips?
// Program ChessMain
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
class ChessMain{
JFrame frame;
Container con;
ChessBoard cb;
int numRows;
int numCols;
int squareSize;
Color color1, color2; // choice
Point[][] squarePos;
public ChessMain(int sqSize, int nR, int nC) {
frame = new JFrame("ChessMain");
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
con = frame.getContentPane();
Point pos = null;
Piece pce = new Piece("init",1);
cb = new ChessBoard(8, 8, 100);
con.add(cb, BorderLayout.CENTER);
//frame.setLocation(300, 300); for later
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args){
Point pos;
JLabel Pawn;
new ChessMain(8, 8,10);
putPiece(Pawn,pos);
}
}
class ChessBoard extends JPanel{
int numRows;
int numCols;
int squareSize;
public ChessBoard(int row, int col, int sqsiz){
numRows = row;
numCols = col;
squareSize = sqsiz;
setPreferredSize(new Dimension(squareSize * col, squareSize * row));
setLayout(null);
// i want to see it ???ChessBoard.setVisible(true);
}
// right here: way confused, seemsas though i need the Point not an int
public void putPiece(JLabel piece, Point position){
piece.setBounds(position.x, position.y, piece.getHeight(),
piece.getWidth());
}
@Override
public void paintComponent(Graphics g){
super.paintComponent(g);
int x, y;
x = y = 0;
for (int r = 0; r < numRows; ++r){
for (int c = 0; c < numCols; ++c){
if ((r % 2 == 0 && c % 2 == 0) || (r % 2 != 0 && c % 2 != 0)){
g.setColor(Color.cyan);
}
else{
g.setColor(Color.yellow);
}
g.fillRect(x, y, squareSize, squareSize);
x += squareSize;
}
y += squareSize;
x = 0;
}
}
}
/*this class is the problem ...*/
class Piece extends JLabel{
String name;
int size;
Piece pce;
public Piece(String nam, Point siz){
super(nam, JLabel.CENTER);
name = nam;
int sizex = siz.x;
int sizey = siz.y;
setPreferredSize(new Dimension(sizex,sizey)); // seems like thid
dhould work
Point size = siz;
int height = getHeight();
int width = getWidth();
//pce = new Piece("Pawn",5);
pce.setBounds(size.x, size.y, height, width);
cb.putPiece(pce, size);
}
}
--
.... i am beelzibub. i like whoever i want!
FEAR ME, DEAL.