Salve, sto svolgendo una traccia d'esame e quindi vi metterò soltanto il punto che non riesco a svolgere.
Traccia:
Implementare una classe starter che:
a.
Crea un oggetto Squadra con 20 tesserati scegliendo:
12 giocatori e il resto a caso tra tecnici e dirigenti.
b.
Visualizza in un frame:
1)
Una label con il bilancio corrente della squadra;
2)
Una combo box con la lista dei 20 tesserati
inseriti (visualizzare nella lista la stringa [Cognome,Ruolo oppure Specializzazione oppure Competenza]);
3)
Un bottone che calcola lo stipendio del tesserato selezionato e visualizza il risultato con una label;
4)
Un bottone che effettua il pagamento degli stipendi e aggiorna la label che visualizza il bilancio corrente.
Al momento ho creato una classe tester così:
codice:
public class tester
{
public static void main(String[] args)
{
Squadra cesena= new Squadra();
Calciatore a= new Calciatore(200.0, "difensore");
Calciatore b= new Calciatore(1500.0, "centrocampista");
Calciatore c= new Calciatore(20.0, "attaccante");
Calciatore d= new Calciatore(100.0, "difensore");
Calciatore e= new Calciatore(150.0, "attaccante");
Calciatore f= new Calciatore(50.0, "difensore");
Calciatore g= new Calciatore(15.0, "centrocampista");
Calciatore h= new Calciatore(30.0, "portiere");
Calciatore i= new Calciatore(70.0, "portiere");
Calciatore l= new Calciatore(60.0, "difensore");
Calciatore m= new Calciatore(90.0, "attaccante");
Calciatore n= new Calciatore(60.0, "attaccante");
Tecnico o= new Tecnico("Allenatore");
Tecnico p= new Tecnico("Massaggiatore");
Tecnico q= new Tecnico("Magazziniere");
Dirigente r= new Dirigente("3Posto");
Dirigente s= new Dirigente("2Posto");
Dirigente t= new Dirigente("3Posto");
Dirigente u= new Dirigente("1Posto");
Dirigente v= new Dirigente("2Posto");
cesena.getTesserati().add(a);
cesena.getTesserati().add(b);
cesena.getTesserati().add(c);
cesena.getTesserati().add(d);
cesena.getTesserati().add(e);
cesena.getTesserati().add(f);
cesena.getTesserati().add(g);
cesena.getTesserati().add(h);
cesena.getTesserati().add(i);
cesena.getTesserati().add(l);
cesena.getTesserati().add(m);
cesena.getTesserati().add(n);
cesena.getTesserati().add(o);
cesena.getTesserati().add(p);
cesena.getTesserati().add(q);
cesena.getTesserati().add(r);
cesena.getTesserati().add(s);
cesena.getTesserati().add(t);
cesena.getTesserati().add(u);
cesena.getTesserati().add(v);
cesena.aggiornaStipendi(30);
cesena.setBilancio(90000.00);
}
}
e una classe grafica così:
codice:
public class Grafica
{
Squadra c;
public Grafica(Squadra c)
{
ClickListenerSeleziona lisel= new ClickListenerSeleziona();
JFrame frame= new JFrame();
JPanel panel= new JPanel();
JLabel label= new JLabel(""+c.getBilancio());
JLabel label2= new JLabel("Seleziona tesserato di cui vuoi vedere lo stipendio");
JComboBox<Tesserato> cmb= new JComboBox<Tesserato>();
for(int ii=0;ii<c.getTesserati().size();ii++)
{
cmb.getSelectedIndex();
cmb.addItem(c.getTesserati().get(ii));
}
JButton button= new JButton("Calcola");
button.addActionListener(lisel);
panel.add(label);
panel.add(label2);
panel.add(cmb);
panel.add(button);
frame.add(panel);
}
public class ClickListenerSeleziona implements ActionListener
{
public void actionPerformed(ActionEvent event)
{
JLabel label3= new JLabel(c.getTesserati().get());
}
}
}
Non so come far selezionare al clicklistener l'elemento che seleziono nella combobox. Vi ringrazio anticipatamente