Corsi di Laurea
ROX @ Unisa - Forum degli studenti di Ingegneria utilizza i cookie. Se prosegui la navigazione accetti il loro uso.
Accetto l'uso dei cookie
Noi abbiamo aggiunto un metodo
Persona getPersona(String codice);
per avere la persona associata al codice. Avevamo pensato ad altre soluzioni, ma questa ci sembrava la migliore. Invito a postare eventuali soluzioni più brillanti di questa.
public class ConsumazioneListener implements ActionListener{
public void actionPerformed(ActionEvent e){
String codice;
codice=dis.getText();
if (disco.disco.get(codice)!=null)
{
disco.disco.get(codice).incrementaConsumazioni();
JOptionPane.showMessageDialog(null, "Il numero di consumazioni effettuate da " + disco.disco.get(codice).getCognome() + " " + disco.disco.get(codice).getNome() + " è: " + (1+disco.disco.get(codice).getConsumazione()-1));
}
else
JOptionPane.showMessageDialog(null, "Nessuna persona con il codice: " + "'"+ codice + "'");
}
}
Personalmente,anche tenendo conto degli esercizi fatti in aula ho visto che per le collezioni quando dichiarava
il tipo di variabili come appunto le TreeMap, non le rendeva private.(forse sbagliando.. ma al momento il codice ovviamente funziona) il mio codice del listener di consumazione è questo:
public class ConsumazioneListener implements ActionListener{
public void actionPerformed(ActionEvent e){
String codice;
codice=dis.getText();
if (disco.disco.get(codice)!=null)
{
disco.disco.get(codice).incrementaConsumazioni();
JOptionPane.showMessageDialog(null, "Il numero di consumazioni effettuate da " + disco.disco.get(codice).getCognome() + " " + disco.disco.get(codice).getNome() + " è: " + (1+disco.disco.get(codice).getConsumazione()-1));
}
else
JOptionPane.showMessageDialog(null, "Nessuna persona con il codice: " + "'"+ codice + "'");
}
}
dove disco è un oggetto di tipo discote.
Per curiosita per inserire il campo testo e i 3 bottoni avete usato due pannelli?
grazie
lo sò solo che non potendo chiedere al prof. se inserire un'altro metodo all'interno di una classe o fare questa cosa come fa ha fatto a lezione...il mio gruppo ha optato per questa scelta...riflettendoci effettivamente anche se nn esplicitamente chiesto nella traccia forse era meglio aggiungere il metodo.. sta di fatto che ci lasciano sempre con un pò di incertezza...
Come potete notare, ho aggiunto il metodo:
public void actionPerformed (ActionEvent e){
display.setText("");
String codice = JOptionPane.showInputDialog(null,"Codice persona:");
try{
Persona p = disco.ritornaPersona(codice);
p.incrementaConsumazioni();
JOptionPane.showMessageDialog(null,"Consumazioni fino a questo momento: " + p.getConsumazioni());
}catch(DiscotecaException ex){
JOptionPane.showMessageDialog(null, ex.getMessage());
ex.printStackTrace();
}
nella classe Discoteca. Il metodo lancia eccezione nel caso in cui la persona non è presente in discoteca.
public Persona ritornaPersona(String codice) throws DiscotecaException
0 utenti, 0 ospiti, 0 utenti anonimi