Bom, para fins de aprendizado estou fazendo um jogo da velha, a principio é um jogo entre dois jogadores humanos. Acontece que o codigo não esta funcionando, como teste, coloquei 2 checkbox funcionando, cada checkbox deveria fazer ações, mas aparentemente não esta funcionando.
Bom, vou começar pelo aviso na compilação
Note: JogoVelha.java uses or overrides a deprecated API
Note: Recompile with -Xlint: deprecated for details
o codigo:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.JOptionPane;
public class JogoVelha extends JFrame {
private JButton btProximo,btNovo;
private JCheckBox ln1Col1,ln1Col2,ln1Col3,ln2Col1,ln2Col2,ln2Col3,ln3Col1,ln3Col2,ln3Col3;
private String jogada;
private int [ ] [ ] tabuleiro;
private JLabel lbAnuncio;
private static JogoVelha frame;
private Boolean turno;
public JogoVelha (){
inicializarComponentes();
definirEventos();
}
private void inicializarComponentes(){
jogada="Vez do jogador X";
//turno=true jogador X, turno = false jogador O
turno=true;
setLayout(null);
setBounds(0,0,250,200);
setTitle("Jogo da Velha do Zamba");
ln1Col1=new JCheckBox();
ln1Col2=new JCheckBox();
ln1Col3=new JCheckBox();
ln2Col1=new JCheckBox();
ln2Col2=new JCheckBox();
ln2Col3=new JCheckBox();
ln3Col1=new JCheckBox();
ln3Col2=new JCheckBox();
ln3Col3=new JCheckBox();
ln1Col1.setBounds(70,30,50,20);
ln1Col2.setBounds(120,30,50,20);
ln1Col3.setBounds(170,30,50,20);
ln2Col1.setBounds(70,50,50,20);
ln2Col2.setBounds(120,50,50,20);
ln2Col3.setBounds(170,50,50,20);
ln3Col1.setBounds(70,70,50,20);
ln3Col2.setBounds(120,70,50,20);
ln3Col3.setBounds(170,70,50,20);
btProximo=new JButton("Proximo jogador");
btProximo.setBounds(20,100,100,30);
btNovo=new JButton("Novo jogo");
btNovo.setBounds(130,100,100,30);
lbAnuncio=new JLabel();
lbAnuncio.setText(jogada);
lbAnuncio.setBounds(20,150,100,30);
add(ln1Col1);
add(ln1Col2);
add(ln1Col3);
add(ln2Col1);
add(ln2Col2);
add(ln2Col3);
add(ln3Col1);
add(ln3Col2);
add(ln3Col3);
add(btProximo);
add(btNovo);
add(lbAnuncio);
}
private void definirEventos(){
ln1Col1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
if(turno){
tabuleiro[1][1]='X';
ln1Col1.setLabel("X");
turno=false;
//venceu();
lbAnuncio.setText("Vez do jogador O");
} else {
tabuleiro[1][1]='O';
ln1Col1.setLabel("O");
turno=true;
//venceu();
lbAnuncio.setText("Vez do jogador X");
}
//ln1Col1.setState(false);
}
});
ln1Col2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
if(turno){
tabuleiro[1][1]='X';
ln1Col2.setLabel("X");
turno=false;
//venceu();
lbAnuncio.setText("Vez do jogador O");
} else {
tabuleiro[1][1]='O';
ln1Col2.setLabel("O");
turno=true;
//venceu();
lbAnuncio.setText("Vez do jogador X");
}
//ln1Col2.setState(false);
}
});
ln1Col3.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
}
});
ln2Col1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
}
});
ln2Col2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
}
});
ln2Col3.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
}
});
ln3Col1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
}
});
ln3Col2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
}
});
ln3Col3.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
}
});
}
public static void main(String [] args){
SwingUtilities.invokeLater(new Runnable(){
public void run(){
frame=new JogoVelha();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Dimension tela=Toolkit.getDefaultToolkit().getScreenSize();
frame.setLocation((tela.width-frame.getSize().height)/2,(tela.height-frame.getSize().height)/2);
frame.setVisible(true);
}
});
}
}