Advertisement
Guest User

Untitled

a guest
May 20th, 2019
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.79 KB | None | 0 0
  1. package tictactoe;
  2.  
  3. import java.awt.Dimension;
  4. import java.awt.FlowLayout;
  5. import java.awt.Font;
  6. import java.awt.GridLayout;
  7. import java.awt.event.ActionEvent;
  8. import java.awt.event.ActionListener;
  9. import javax.swing.JButton;
  10. import javax.swing.JFrame;
  11.  
  12. public class TicTacToe extends JFrame implements ActionListener {
  13. private JButton[] cells;
  14. private final String PLAYER1="X";
  15. private final String PLAYER2="O";
  16. private String currentPlayer= PLAYER1;
  17.  
  18.  
  19. public TicTacToe( )
  20. {
  21. setLayout(new GridLayout(3,3));
  22. cells = new JButton[9];
  23. for (int i = 0; i < cells.length; i++) {
  24. cells[i] = new JButton();
  25. cells[i].setFont(new Font(Font.SANS_SERIF,Font.PLAIN,50));
  26. cells[i].setPreferredSize(new Dimension(100,100));
  27. cells[i].addActionListener(this);
  28. add(cells[i]);
  29. }
  30. pack();
  31.  
  32.  
  33. }
  34. public static void main(String[] args) {
  35. TicTacToe ttt= new TicTacToe();
  36. ttt.setVisible(true);
  37. ttt.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  38.  
  39. }
  40.  
  41. @Override
  42. public void actionPerformed(ActionEvent e) {
  43. JButton currentButton= (JButton)e.getSource();
  44. currentButton.setText(currentPlayer);
  45. currentPlayer=currentPlayer.equals(PLAYER1)? PLAYER2:PLAYER1;
  46.  
  47. }
  48. public boolean hasWon(String player){
  49. if(player.equals(cells[0].getText()) &&player.equals(cells[1].getText())&& player.equals(cells[2].getText()))
  50. return true;
  51. if(player.equals(cells[3].getText()) &&player.equals(cells[4].getText())&& player.equals(cells[5].getText()))
  52. return true;
  53. if(player.equals(cells[6].getText()) &&player.equals(cells[7].getText())&& player.equals(cells[8].getText()))
  54. return true;
  55.  
  56.  
  57.  
  58. }
  59.  
  60.  
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement