Hello everyone,
So I am suppose to make a source code that displays 9 labels(3x3) like tic tac toe but instead of playing the computer or even playing I am suppose to make it display either a x,o, or a blank spot in these labels randomly. I can't figure out how to associate the images to a math.random command. any suggestions?
Spike
|
Pro contributor
|
![]() |
| 6Apr2010,00:29 | #2 |
|
one way to do this is....
Code:
import javax.swing.*;
import java.awt.GridLayout;
import java.util.Random;
import java.awt.Color;
public class Triliza extends JFrame{
private JLabel labels[][];//array of JLabels
private Random random;
private String validChars[]={"x","o"," "};//valid characters in an array
public Triliza(){
random=new Random();
labels=new JLabel[3][3];
setLayout(new GridLayout(3,3));
for (int i=0;i<3;i++)
for(int j=0;j<3;j++){
labels[i][j]=new JLabel(validChars[random.nextInt(3)],JLabel.CENTER);//we choose randomly one element from the array of valid characters.
labels[i][j].setBorder(BorderFactory.createLineBorder(Color.black));//we add a border for better results
add(labels[i][j]);
}
setDefaultCloseOperation(EXIT_ON_CLOSE);
pack();
setVisible(true);
}
public static void main(String args[]){
new Triliza();
}
}
|
|
Newbie Member
|
|
| 6Apr2010,00:51 | #3 |
|
well I have an image for the x and the o thats what was getting me confused
|
|
Pro contributor
|
![]() |
| 6Apr2010,02:21 | #4 |
|
is the above code ok , or you want it with images instead?
|
|
Newbie Member
|
|
| 8Apr2010,03:26 | #5 |
|
well its suppose to use the images I personally think it shouldnt matter but thats what I am suppose to do
|
|
Pro contributor
|
![]() |
| 8Apr2010,04:11 | #6 |
|
then here you are.
inside i have put 2 jpg files (x,o) and the appropriate code. |

