1
Crear una clase llamada JuegoTresEnRaya . Si está utilizando un entorno de desarrollo Java como Netbeans , habrá una opción en el menú Archivo para ello. De lo contrario , cree un archivo de texto y el nombre de " TicTacToeGame.java . "
2
Pega el siguiente código dentro del archivo :
java.awt.GridLayout importación , importación java . awt.event.ActionEvent ; java.awt.event.ActionListener importación; java.util.ArrayList importación , importación javax.swing.JButton ; javax.swing.JFrame importación; javax.swing.JOptionPane importación; pública
clase JuegoTresEnRaya extiende JFrame implementa ActionListener {
ArrayList cadena jugador = " X" ; JuegoTresEnRaya público ( ) { } pública checkWinner void ( ) { } public void actionPerformed ( ActionEvent e) { } public static void main ( String [] args ) { nueva JuegoTresEnRaya ( ) ;} } Construya constructor. Este es el método con el mismo nombre que la clase en sí , en este caso , " JuegoTresEnRaya ( ) ". Se llama al constructor , ya que se utiliza para generar el programa y prepararlo para ser ejecutado . Pega el siguiente código para construirlo : JuegoTresEnRaya pública () {//Configurar una window.super JFrame (); //Utiliza un diseño de cuadrícula con tres columnas y tres filas , ya que esta es TicTacToe , this.setLayout ( nueva GridLayout (3,3 )); //Llene cada espacio en la red con un button.for (int x = 0 ; x < 9 ; x + +) { JButton temp = new JButton ("- "); squares.add ( temp ) ; temp.addActionListener (this); this.add ( temp ) ;} //Cambiar el tamaño de la ventana para que todo encaje , //y hacer que la interfaz de usuario Página 4 crear el método " actionPerformed " . Este método se llama cuando el usuario hace algo dentro de su aplicación . Le proporciona un objeto " ActionEvent " , y se puede inspeccionar el objeto de averiguar lo que el usuario, y reaccionar en consecuencia. Pega este código : public void actionPerformed ( ActionEvent e) { //Para todos los botones de la grid.for juego ( plaza JButton : plazas ) { //Si hace clic en el botón fue el origen del evento . if ( square.equals ( e.getSource ()) ) { //Establecer el botón a la carta del jugador, X o O.square.setText (jugador) ; //Cambio de turno del siguiente jugador . if ( player.equals ("X ")) jugador = " O" ; otro jugador = " X" ;} } //Comprueba si alguien tiene won.checkWinner (); } crear el método " checkWinner " pegando el siguiente código: pública checkWinner void ( ) { //Obtener el contenido de la board.String [ ] = new String bordo [ 9 ] ; //Establecer el ganador al espacio en blanco, - ganador String = " - ", " . " ; for (int x = 0 ; x < 9 ; x + + ) { tablero [x ] = squares.get (x ) getText (); System.out.println (x + . ":" + tabla [x ] ) ;} //Comprobar si la fila superior está llena de la misma carta //Si es así, entonces ese jugador tiene won.if ( board [ 0 ] es igual a ( board [ 1 ] .) && . . tablero [ 0 ] es igual a (placa [ 2 ])) { ganador = pensión [ 0 ] ;} . else //Medio Rowif ( . placa [ 3 ] es igual a (placa [ 4 ] ) && tablero [ 3 ] es igual a (placa [ ,"5 ])) { ganador = pensión [ 3 ] ;} . . else //Bottom rowif (tablero [ 6 ] es igual a (placa [ 7 ] ) && tablero [ 6 ] es igual a (placa [ 8 ])) { ganador = pensión [ ,"6 ] ; } else //Izquierda columnif ( . . tablero [ 0 ] es igual a (placa [ 3 ] ) && tablero [ 0 ] es igual a (placa [ 6 ])) { ganador = pensión [ 0 ] ;} else //Medio columnif ( . . cartón [ 1 ] es igual a (placa [ 4 ] ) && tablero [ 1 ] es igual a (placa [ 7 ])) { ganador = pensión [ 1 ] ;} . else //Derecho columnif (tablero [ 2 ] es igual a (placa . [ 5 ] ) && tablero [ 6 ] es igual a (placa [ 8 ])) { ganador = pensión [ 2 ] ;} . else //Arriba - izquierda, Centro , Derecha Inferior Diagonalif (tablero [ 0 ] es igual a (placa [ 4 . ] ) && tablero [ 0 ] es igual a (placa [ 8 ])) { ganador = pensión [ 0 ] ;} . else //Arriba-Derecha , Medio , inferior izquierda Diagonalif (tablero [ 2 ] es igual a (placa [ 4 ] ) . && tablero [ 2 ] es igual a (placa [ 6 ])) { ganador = pensión [ 2 ] ;} //Si el ganador no es el espacio en blanco " - ", /entonces alguien ha ganado /. Los felicito //y poner fin a la game.If ( winner.equals ("- ") ) { JOptionPane.showMessageDialog ( RootPane , " El ganador es " + ganador) ; System.exit ( 0 ) ;} }
3
5