Buona sera, mi trovo un esercizio da svolgere in cui devo creare un'interfaccia di un giochino tra Dama, Forza4, e Prato Fiorito, io avevo deciso di svolgere quella per la dama perchè apparentemente mi sembrava più semplice, ma quando mi ritrovo di fronte al codice mi blocco.
L'esercizio si basa sul personalizzare un codice già pre-complilato che è il seguente:
import javax.swing.*;
import java.awt.event.*;
import java.util.*;
public class AppGrafica {
private JFrame frame;
/* INIZIO PARTE DA PERSONALIZZARE */
private JButton bottone1;
private JButton bottone2;
private JLabel etichetta1;
private JTextField campoTesto;
private JLabel etichetta2;
private JButton bottone3;
private String statoBottone3;
private ArrayList<JButton> bottoniDestra;
/* FINE PARTE DA PERSONALIZZARE */
public AppGrafica()
{ frame = new JFrame();
frame.getContentPane().setLayout(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
impostaLF(); //Look and Feel, impostarlo utilizzando quello del Sistema Op. su cui viene eseguita l'app
frame.setVisible(true);
inizializzaContenuto();
[color=#FF4000]/* INIZIO PARTE DA PERSONALIZZARE */ [/color]
frame.setBounds(100, 100, 500, 450);//personalizzarla con i dati dell'app che si vuole realizzare
frame.setTitle("Esempio");
[color=#FF4000]/* FINE PARTE DA PERSONALIZZARE */ [/color]
}
private ImageIcon caricaIcona(String nomeFile)
{ return new ImageIcon(getClass().getResource(nomeFile));
}
private void impostaLF()
{ try
{ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch(Exception e)
{ System.out.println(e);
System.exit(0);
}
}
private void inizializzaContenuto()
{ /* INIZIO PARTE DA PERSONALIZZARE */
bottone1 = new JButton("Aumenta");
frame.getContentPane().add(bottone1);
bottone1.setBounds(80, 30, 120, 30);
bottone1.addActionListener(new PressioneBottone1());
bottone2 = new JButton("Diminuisci");
frame.getContentPane().add(bottone2);
bottone2.setBounds(80, 110, 120, 30);
bottone2.addActionListener(new PressioneBottone2());
etichetta1 = new JLabel("0");
frame.getContentPane().add(etichetta1);
etichetta1.setBounds(140, 70, 40, 30);
campoTesto = new JTextField("");
frame.getContentPane().add(campoTesto);
campoTesto.setBounds(80, 190, 120, 30);
etichetta2 = new JLabel("");
frame.getContentPane().add(etichetta2);
etichetta2.setBounds(80, 270, 120, 30);
bottone3 = new JButton();
frame.getContentPane().add(bottone3);
bottone3.setBounds(110, 320, 40, 40);
statoBottone3="OK";
bottone3.setIcon(caricaIcona("ok.png"));
bottone3.addActionListener(new PressioneBottone3());
bottoniDestra=new ArrayList<JButton>();
ActionListener listener = new PressioneBottoniDestra();
for(int i=1;i<=5;i++)
{ JButton bottone=new JButton(""+i);
frame.getContentPane().add(bottone);
bottone.setBounds(250, 30*i, 120, 30);
bottoniDestra.add(bottone);
bottone.addActionListener(listener);
}
/* FINE PARTE DA PERSONALIZZARE */
}
/* INIZIO PARTE DA PERSONALIZZARE */
private class PressioneBottone1 implements ActionListener
{ public void actionPerformed(ActionEvent e)
{ int n = Integer.parseInt(etichetta1.getText());
if(n<10)
n++;
etichetta1.setText(""+n);
}
}
private class PressioneBottone2 implements ActionListener
{ public void actionPerformed(ActionEvent e)
{ int n = Integer.parseInt(etichetta1.getText());
if(n>0)
n--;
etichetta1.setText(""+n);
}
}
private class PressioneBottone3 implements ActionListener
{ public void actionPerformed(ActionEvent e)
{ String testo=campoTesto.getText();
etichetta2.setText(testo);
}
}
private class PressioneBottone4 implements ActionListener
{ public void actionPerformed(ActionEvent e)
{ if(statoBottone3.equals("OK"))
{ statoBottone3="NA";
bottone3.setIcon(caricaIcona("na.png"));
}
else
{ statoBottone3="OK";
bottone3.setIcon(caricaIcona("ok.png"));
}
}
}
private class PressioneBottoniDestra implements ActionListener
{ public void actionPerformed(ActionEvent e)
{ JButton bottonePremuto=(JButton)e.getSource();
int numeroBottone=Integer.parseInt(bottonePremuto.getText());
etichetta2.setText("Premuto il bottone "+numeroBottone);
}
}
/* FINE PARTE DA PERSONALIZZARE */
public static void main(String[] args)
{ new AppGrafica(); //DA PERSONALIZZARE CON IL NOME DELLA CLASSE CREATA
}
}
Grazie in anticipo a chi mi aiuta.