Dunque ho un oggetto di tipo String al quale vorrei aggiungere un listener che mi avverta in caso il valore sia modificato.
Lo so che la domanda possa sembrarvi banalissima... ma non son giunto a trovare 1 soluzione da solo![]()
Help plz
Dunque ho un oggetto di tipo String al quale vorrei aggiungere un listener che mi avverta in caso il valore sia modificato.
Lo so che la domanda possa sembrarvi banalissima... ma non son giunto a trovare 1 soluzione da solo![]()
Help plz
Non esiste.Originariamente inviato da favauser
Dunque ho un oggetto di tipo String al quale vorrei aggiungere un listener che mi avverta in caso il valore sia modificato.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Un oggetto del genere non esiste. I listener sono classi tipiche della realizzazione di interfaccie grafiche. Per curiosita', a cosa ti serve?
Ecco perchè non lo trovavo!!!! NON ESISTE!!!!!![]()
Stò cercando di emulare il comportamento di 1 periferica facendole rispondere valori String che recupera da file invece che dalla periferica.
Utilizzavo un metodo del genere:
public void AddListener(int millisec,Action action){
if (millisec>0){
try {
pp.addUpdateListener((UpdateListener) new Listener(action,log,this));
} catch (IOException ex) {
ex.printStackTrace();
} catch (TooManyListenersException ex) {
ex.printStackTrace();
}
C'è un qualche tipo di trucchetto che possa usare? o devo passare l'action direttamente al metodo che cambia il valore?
Boh, non e' che tu abbia spiegato benissimo. Vabbe' immagino che tu abbia una variabile stringa, mettila privata e realizza un metodo set che modifica il valore di questa stringa. Dentro al set, oltre che cambiare la stringa, fai anche qualsiasi cosa tu debba fare.
Per esperienza non è facile spiegare in codicesorry...
Cmq si pensavo di risolvere proprio come consigli tu... anche se poi perde 1 pò di senso tutto il lavoro che c'è dietro ma va beh...![]()
(grazie)
Alla fine i Listener funzionano piu' o meno cosi'. Le classi swing hanno al loro interno dei vettori di listener. Quando vengono invocati determinati metodi della classe swing, questa crea un evento settandosi come source, poi scorre il vettore dei listener e invoca i giusti metodi dei vari listener passandogli l'evento.
Fare dei thread che ogni tot secondi controllano un seterminato stato sarebbe inutilmente dispendioso.