Salve a tutti, sono 2 giorni che mi sbatto su questo codice, e non riesco a risolvere un problema:
in pratica ho un'interfaccia semplice, con un Jtextfield, un bottone, ed un Jlabel, che dovrebbero prendere il contenuto del TextField, farne un'analisi, per vedere ad esempio se è palindorma, o meno, e stampare nel Jlabel, il risultato.
l'asino casca nel momento in cui faccio il getText() del JTextField, poiché mi prende solo l'input iniziale di default, e se modifico il testo, non me lo prende... Che cosa devo fare?
Premetto che nel codice c'è una bozza di observer che stavo implementando, ma, dato che non riesco a risolvere questo problema, non so come concludere.
codice della classe del textfield
codice:
public class PannelloInput extends JTextField implements IPrendiTesto{
private static final long serialVersionUID = 0;
private String testo;
public PannelloInput() {
super("itopinonavevanonipoti");
}
public String getTesto() {
return this.getText();
}
public char[] getCaratteri() {
return this.getText().toCharArray();
}
}
codice della classe del Jbutton
codice:
public class PannelloRisposte extends JPanel implements Observer{
private static final long serialVersionUID = 0L;
private Palindromia pal= new Palindromia();
private ProxyElaboratore elaboratore= new ProxyElaboratore(pal);
private JButton button;
private JLabel label= new JLabel();
public PannelloRisposte() {
setLayout(new BorderLayout());
label.setPreferredSize(new Dimension(100, 100));
button=new JButton("Verifica!");
add(label, BorderLayout.SOUTH);
add(button, BorderLayout.NORTH);
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
System.out.println("sì3");
label.setText(elaboratore.risolvi(elaboratore.getCaratteri()));
System.out.println("sì4");
}
});
}
}