Estou com um projeto da faculdade pra terminar e preciso de ajuda. É um jogo de cartas. Eu construí um ArrayList
package ifpb.monteiro.p2.projetoFinal;
import java.awt.EventQueue;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import java.awt.Dimension;
import java.util.ArrayList;
import javax.swing.JPanel;
import javax.swing.JLabel;
import javax.swing.SwingConstants;
import java.awt.FlowLayout;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class GUITelaJogo extends JFrame {
public ArrayList<String> maoJogador = new ArrayList<>(); // Arraylist com o nome que o jogador terá na mão.
private ArrayList<ImageIcon> lista = new ArrayList<>(); //Arraylista que conterá as cartas(objeto) que tem na mão do jogador*/
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
GUITelaJogo frame = new GUITelaJogo();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public GUITelaJogo() {
maoJogador.add("asPaus"); //Adicionando cartas à mão do jogador
maoJogador.add("doisOuro"); //Adicionando cartas à mão do jogador
maoJogador.add("tresEspadas");//Adicionando cartas à mão do jogador
maoJogador.add("asPaus");//Adicionando cartas à mão do jogador
maoJogador.add("damaPaus");//Adicionando cartas à mão do jogador
maoJogador.add("reiPaus");//Adicionando cartas à mão do jogador
setMaximumSize(new Dimension(0, 0));
setMinimumSize(new Dimension(850, 700));
setVisible(true);
setBounds(100, 100, 450, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
getContentPane().setLayout(null);
JPanel panel = new JPanel();
panel.setOpaque(false);
panel.setBounds(10, 618, 783, 33);
getContentPane().add(panel);
JButton descartar = new JButton("Descartar");
descartar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
maoJogador.remove(maoJogador.get(0));
lista.remove(lista.get(0));
}
});
repaint();
descartar.setHorizontalTextPosition(SwingConstants.CENTER);
panel.add(descartar);
JButton pegarCarta = new JButton("Pegar carta");
panel.add(pegarCarta);
JButton embaralhar = new JButton("Embaralhar");
panel.add(embaralhar);
JPanel mao = new JPanel();
mao.setLayout(new FlowLayout());
mao.setOpaque(false);
mao.setBounds(10, 486, 783, 125);
getContentPane().add(mao);
JLabel imagemMesa = new JLabel("");
imagemMesa.setBounds(0, 186, 808, 476);
getContentPane().add(imagemMesa);
imagemMesa.setIcon(new ImageIcon(GUITelaJogo.class.getResource("/ifpb/monteiro/p2/projetoFinal/imagens/mesa.png")));
imagemMesa.setPreferredSize(new Dimension(988, 142));
imagemMesa.setOpaque(false);
imagemMesa.setMinimumSize(new Dimension(988, 142));
imagemMesa.setMaximumSize(new Dimension(988, 289));
JButton btnNewButton_3 = new JButton("Sair");
btnNewButton_3.setBounds(704, 622, 89, 23);
getContentPane().add(btnNewButton_3);
// Mao.add(imagemMao);
/* Início código mão jogador */
String caminho = "./imagens/cartas/"; //Caminho onde estão as cartas
ImageIcon icon;
/* Percorre o arraylist com nome das cartas('maoJogador'), joga o caminho completo em icon e adiciona a carta ao arraylist de imagens('lista')*/
for (String carta : maoJogador) {
icon = new ImageIcon(caminho+carta+".gif");
lista.add(icon);
}
for (int i = 0; i < lista.size(); i++) {/* Para cada imagem na lista de imagens, o label receberá as imagens. */
JLabel imagemMao = new JLabel("");
imagemMao.setIcon(new ImageIcon(testeGUI.class.getResource(lista.get(i).toString())));
mao.add(imagemMao);
}
/* Fim código mão jogador */
}
}
Obrigado.
