Escolar Documentos
Profissional Documentos
Cultura Documentos
Jogo Da Velha Part 1
Jogo Da Velha Part 1
- Parte 1 -
Fazendo a parte
grfica do jogo da Velha
Primeiro vamos usar a classe JFrame para criar a janela. No esquea que preciso salvar o arquivo com o
nome de Velha.java
import javax.swing.JFrame;
public class Velha {
private static JFrame frame = new JFrame("Jogo da Velha");
public static void main(String[] args) {
// determina o tamanho do frame
frame.setSize(460,480);
// torna o frame visvel
frame.setVisible(true);
}
}
Provavelmente depois de rodar a aplicao no foi possvel finalizar ela. Isso acontece porque no foi
determinada a ao de fechar o programa, ento vamos tratar o evento da janela para fazer isso.
import javax.swing.JFrame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class Velha {
private static JFrame frame = new JFrame("Jogo da Velha");
public static void main(String[] args) {
// adiciona o evento ao frame
frame.addWindowListener(new eventojanela());
// determina o tamanho do frame
frame.setSize(460,480);
// torna o frame visvel
frame.setVisible(true);
}
/*
* classe de Eventos da Janela
*/
private static class eventojanela extends WindowAdapter
{
}
}
Agora j conseguimos fechar a aplicao. Para fazer um jogo da velha temos varias opes, vou usar a
mais fcil, que no fica to bem apresentvel, mas serve para aprendizado. Vamos adicionar um layout ao Frame.
Utilizando o layout de grade 3x3 conseguiremos chegar a um tabuleiro de jogo da velha.
import javax.swing.JFrame;
import java.awt.GridLayout;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class Velha {
private static JFrame frame = new Jframe("Jogo da Velha");
public static void main(String[] args) {
// GridLayout cria um layout de grade do tipo 3x3 para o frame
frame.getContentPane().setLayout(new GridLayout(3,3));
// adiciona o evento ao frame
frame.addWindowListener(new eventojanela());
// determina o tamanho do frame
frame.setSize(460,480);
// torna o frame visvel
frame.setVisible(true);
}
/*
* classe de eventos da janela
*/
private static class eventojanela extends WindowAdapter
{
}
}
Aparentemente no ocorreu nada, pois ainda no adicionamos nada na grade. Vamos adicionar Botes.
Vamos criar um vetor de Objetos do tipo JButton para adicionar grade. No se esquecendo que todos os
atributos devem ser estticos(static) para serem usados no public static void main(String args[]).
import javax.swing.JFrame;
import javax.swing.JButton;
import java.awt.GridLayout;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
/* atravs deste mtodo conseguimos saber o que foi clicado, entre outras
coisas para maiores informaes sempre vlido dar uma olhada na API do
Java. Mas o mtodo getSource() retorna um objeto do que foi clicado e dando
um casting ((JButton)e.getSource()) conseguimos manipular o objeto JButton
clicado. */