AppletTalk.com Forum Index AppletTalk.com
Java discussions newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Need help with JFrame app

 
Post new topic   Reply to topic    AppletTalk.com Forum Index -> Java Help
View previous topic :: View next topic  
Author Message
Tag
Guest





PostPosted: Mon Oct 30, 2006 8:11 am    Post subject: Need help with JFrame app Reply with quote



ok im trying to create basically a tic tac toe game in java. However im
having a bit of trouble with the basics, being new to java and all.
What ive done is create a class called XOPanel, that creates a array of
objects called XOSquare. XOPanel creates a window and what i want it to
do is draw a 3x3 gris on this window and fill each of these spaces with
its coresponding XOSquare. Each XOSquare is just a JPanel i want
created so that later on an X or O will be drawn to it. However right
now my window pops up, but im unsure how to get the array to draw, or
how to fill each position with its XOSquare. Heres what i ahve so far:

XOPanel:


import java.awt.*;
import java.awt.event.*;

import javax.swing.*;


public class XOPanel extends JPanel implements MouseListener {

private int squareSize;
private XOSquare[][] boardArray;
private int width = 400, height = 400;

public XOPanel(){
boardArray = new XOSquare[3][3];
setSize(width, height);
}

private void paintComponet(Graphics g){
super.paintComponent(g);
int paneHeight = this.getHeight();
int paneWidth = this.getWidth();
if (paneHeight < paneWidth)
squareSize = paneHeight / 3;
else
squareSize = paneWidth / 3;

for (int row=0; row<3; row++){
for (int col=0; col<3; col++){
g.drawRect(col*squareSize, row*squareSize, squareSize,
squareSize);
}
}
}

public static void main(String[] args){
JFrame f = new JFrame("Test");
XOPanel xoPanel = new XOPanel();
f.getContentPane().add(xoPanel);
f.setSize(xoPanel.width, xoPanel.height);
f.setVisible(true);
f.addWindowListener
( new WindowAdapter()
{ public void windowClosing(WindowEvent e)
{ System.exit(0);
}
}
);

}



XOSquare:

import java.awt.Rectangle;

public class XOSquare extends Rectangle {

public XOSquare(int width, int height){
this.setSize(width, height);
}
}


im hoping you guys can help.
Back to top
Thomas Weidenfeller
Guest





PostPosted: Mon Oct 30, 2006 2:59 pm    Post subject: Re: Need help with JFrame app Reply with quote



Tag wrote:
Quote:
XOPanel creates a window and what i want it to
do is draw a 3x3 gris on this window and fill each of these spaces with
its coresponding XOSquare. Each XOSquare is just a JPanel

Here you go likely wrong.

With JPanel one either uses

1) JPanel + Java 2D graph drawing

or

2) JPanel + LayoutManager + Components (incl. additional JPanels)

For graphics one typically uses option 1): Completely drawing the
contents of the JPanel with the Java 2D API, instead of placing
additional panels on the main JPanel.

Mixing option 1) and 2) on the same JPanel is often not a good idea. You
easily end up in all sorts of unpleasant hacks.

/Thomas

--
The comp.lang.java.gui FAQ:
http://gd.tuwien.ac.at/faqs/faqs-hierarchy/comp/comp.lang.java.gui/
ftp://ftp.cs.uu.nl/pub/NEWS.ANSWERS/computer-lang/java/gui/faq
Back to top
Display posts from previous:   
Post new topic   Reply to topic    AppletTalk.com Forum Index -> Java Help All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.