();
cordes joueur = "X" ;
TicTacToeGame publique () {}
checkWinner public void () { }
publique vide actionPerformed ( ActionEvent e) {}
public static void main ( string [] args) {new TicTacToeGame ( );}}
3
Créer le constructeur . C'est la méthode avec le même nom que la classe elle-même , dans ce cas, " TicTacToeGame (). " Il est appelé le constructeur, car il est utilisé pour construire le programme et de le préparer à exécuter. Collez le code suivant pour le construire :
TicTacToeGame publique () { //Installation d'un window.super JFrame ();
//Utiliser une disposition de la grille , avec trois colonnes et trois lignes , puisque c'est TicTacToe , this.setLayout ( new GridLayout (3,3) ) ;
//Remplir chaque espace sur la grille avec un button.for (int x = 0; x <9 ; x + +) { JButton temp = new JButton (" - "); squares.add (temp) ; temp.addActionListener (this); this.add (temp) ; }
//redimensionner la fenêtre pour tout faire rentrer , //et rendre l'interface utilisateur Hôtels 4
créer la méthode " actionPerformed " . Cette méthode est appelée lorsque l'utilisateur fait quelque chose dans votre application. Il vous fournit un objet " ActionEvent " , et vous pouvez inspecter cet objet pour savoir ce que l'utilisateur l'a fait, et réagir en conséquence . Collez ce code:
publique vide actionPerformed ( ActionEvent e) {//Pour tous les boutons de la grid.for de jeu ( square JButton : carrés ) {//Si le bouton cliqué était la source de l'événement . if ( square.equals ( e.getSource () )) { //Définit le bouton de la lettre du joueur , X ou O.square.setText ( joueur ) ;
//Changement au tour du joueur suivant . if ( player.equals ("X" ) ) joueur = "O" ; lecteur reste = " X ";} }
//Test pour voir si quelqu'un a won.checkWinner (); }
5
créer la méthode " checkWinner " en collant le code suivant :
checkWinner public void () {
//Obtenir le contenu de la board.String [] board = new String [9];
//Définir le gagnant de l'espace vide , - vainqueur de String = "-" " . " ;
for (int x = 0; x <9 ; x + +) { tableau [x ] = squares.get (x) getText (); System.out.println ( x + . ":" + tableau [x] );}
//Vérifier si la rangée du haut est plein de la même lettre //Si c'est le cas, ce joueur a won.if (Conseil [ 0 ] est égal à (Conseil [ 1]. ) && . . conseil [0] est égal à ( Conseil [2] )) { gagnant = bord [0] ;} . else //Moyen Rowif ( . conseil [3 ] est égal à ( Conseil [4] ) && Conseil [3] égal ( conseil [ ,"5] )) { gagnant = pension [3] ;} . . else //Bottom rowif ( Conseil [6] equals ( carte [7 ] ) && Conseil [6] égal ( Conseil [8] )) { gagnant = bord [ ,"6] ; } else //Gauche columnif ( . . conseil [0 ] est égal à ( Conseil [3 ] ) && conseil [0] égal ( Conseil [6] )) { gagnant = bord [0]; } else //Moyen columnif ( . . conseil [1 ] est égal à ( Conseil [4] ) && conseil [1] égal ( carte [7 ] )) { gagnant = bord [1] ;} . else //Droite columnif ( Conseil [2] égal ( conseil [5]. ) && Conseil [6] égal ( Conseil [8] )) { gagnant = bord [2] ;} . else //Haut - gauche Milieu, Droite , Bas Diagonalif ( conseil [0] est égal à ( conseil [4 . ] ) && conseil [0] égal ( Conseil [8] )) { gagnant = bord [0] ;} . else //Haut -Droite, Moyen , Bas gauche Diagonalif ( Conseil [2] égal ( Conseil [4] ) . && bord [2] égal ( Conseil [6] )) { gagnant = bord [2]; }
//Si le gagnant n'est pas l'espace vide " - " //alors quelqu'un a gagné . Félicitez-les //et mettre fin à la game.if ( winner.equals ("-" ) ! ) { JOptionPane.showMessageDialog ( rootPane , " Le gagnant est " + gagnant) ; System.exit (0); }}