Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.GridLayout;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import javax.swing.JButton;
- import javax.swing.JFrame;
- import javax.swing.JOptionPane;
- public class TicTacToe implements ActionListener {
- private JFrame window = new JFrame("Tic-Tac-Toe");
- private JButton button1 = new JButton("");
- private JButton button2 = new JButton("");
- private JButton button3 = new JButton("");
- private JButton button4 = new JButton("");
- private JButton button5 = new JButton("");
- private JButton button6 = new JButton("");
- private JButton button7 = new JButton("");
- private JButton button8 = new JButton("");
- private JButton button9 = new JButton("");
- private String letter = "";
- private int count = 0;
- private boolean win = false;
- public TicTacToe() {
- /* Create Window */
- window.setSize(300, 300);
- window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- window.setLayout(new GridLayout(3, 3));
- /* Add Buttons To The Window */
- window.add(button1);
- window.add(button2);
- window.add(button3);
- window.add(button4);
- window.add(button5);
- window.add(button6);
- window.add(button7);
- window.add(button8);
- window.add(button9);
- /* Add The Action Listener To The Buttons */
- button1.addActionListener(this);
- button2.addActionListener(this);
- button3.addActionListener(this);
- button4.addActionListener(this);
- button5.addActionListener(this);
- button6.addActionListener(this);
- button7.addActionListener(this);
- button8.addActionListener(this);
- button9.addActionListener(this);
- /* Make The Window Visible */
- window.setVisible(true);
- }
- public void actionPerformed(ActionEvent a) {
- count++;
- /* Calculate Who's Turn It Is */
- if (count == 1 || count == 3 || count == 5 || count == 7 || count == 9) {
- letter = "X";
- }
- if (count == 2 || count == 4 || count == 6 || count == 8 || count == 10) {
- letter = "O";
- }
- /* Display X's or O's on the buttons */
- if (a.getSource() == button1) {
- button1.setText(letter);
- button1.setEnabled(false);
- }
- if (a.getSource() == button2) {
- button2.setText(letter);
- button2.setEnabled(false);
- }
- if (a.getSource() == button3) {
- button3.setText(letter);
- button3.setEnabled(false);
- }
- if (a.getSource() == button4) {
- button4.setText(letter);
- button4.setEnabled(false);
- }
- if (a.getSource() == button5) {
- button5.setText(letter);
- button5.setEnabled(false);
- }
- if (a.getSource() == button6) {
- button6.setText(letter);
- button6.setEnabled(false);
- }
- if (a.getSource() == button7) {
- button7.setText(letter);
- button7.setEnabled(false);
- }
- if (a.getSource() == button8) {
- button8.setText(letter);
- button8.setEnabled(false);
- }
- if (a.getSource() == button9) {
- button9.setText(letter);
- button9.setEnabled(false);
- }
- // horizontal wins
- if (button1.getText() == button2.getText()
- && button2.getText() == button3.getText()
- && button1.getText() != "") {
- win = true;
- }
- if (button4.getText() == button5.getText()
- && button5.getText() == button6.getText()
- && button4.getText() != "") {
- win = true;
- }
- if (button7.getText() == button8.getText()
- && button8.getText() == button9.getText()
- && button7.getText() != "") {
- win = true;
- }
- // vertical wins
- if (button1.getText() == button4.getText()
- && button4.getText() == button7.getText()
- && button1.getText() != "") {
- win = true;
- }
- if (button2.getText() == button5.getText()
- && button5.getText() == button8.getText()
- && button2.getText() != "") {
- win = true;
- }
- if (button3.getText() == button6.getText()
- && button6.getText() == button9.getText()
- && button3.getText() != "") {
- win = true;
- }
- // diagonal wins
- if (button1.getText() == button5.getText()
- && button5.getText() == button9.getText()
- && button1.getText() != "") {
- win = true;
- }
- if (button3.getText() == button5.getText()
- && button5.getText() == button7.getText()
- && button3.getText() != "") {
- win = true;
- }
- /* Show a dialog if someone wins or the game is tie */
- if (win == true) {
- JOptionPane.showMessageDialog(null, letter + " WINS!");
- }
- if (count == 9 && win == false) {
- JOptionPane.showMessageDialog(null, "Tie Game!");
- }
- }
- public static void main(String[] args) {
- new TicTacToe();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement