Ciao a tutti, dovrei realizzare un JDialog che però restituisca un array di stringhe. Ho controllato nelle varie api, ma tra tutti i Dialog che ho trovato al massimo posso far restituire una sola stringa.
Potete aiutarmi?
Ciao a tutti, dovrei realizzare un JDialog che però restituisca un array di stringhe. Ho controllato nelle varie api, ma tra tutti i Dialog che ho trovato al massimo posso far restituire una sola stringa.
Potete aiutarmi?
OnLine il nuovo sito: www.lasfidacontinua.it
No alt. Intanto stai pensando di fare una "tua" dialog che contiene i componenti che vuoi o pensi di usare un JOptionPane???Originariamente inviato da rob_santini
Ciao a tutti, dovrei realizzare un JDialog che però restituisca un array di stringhe. Ho controllato nelle varie api, ma tra tutti i Dialog che ho trovato al massimo posso far restituire una sola stringa.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Pensavo di fare una mia dialog, dato che devo inserire più TextFields. Se non sbaglio con JOptionPane posso avere una sola TextField, giusto?
OnLine il nuovo sito: www.lasfidacontinua.it
Bene, quale è il problema? Se la dialog deve essere "modale" allora fai un tuo metodo nella classe che estende JDialog del tipo:Originariamente inviato da rob_santini
Pensavo di fare una mia dialog, dato che devo inserire più TextFields.
Non è l'unico modo .... un altro sarebbe quello di offrire i metodi per prelevare le informazioni ... comunque senza far "sapere" nulla di come è fatta internamente la dialog.codice:public String[] mostra() { setVisible(true); .... prende i dati dai campi ..... }
Quindi il codice esterno che usa la dialog farebbe una cosa del tipo:
Se riesci a "modellare" tutte le informazioni da restituire come un singolo oggetto (o array) però è più "pulita" la prima soluzione, perché incapsula meglio il tutto.codice:tuaDialog.setVisible(true); String[] v = tuaDialog.getTuoiDati();
Di default sì ma tieni presente che il "message" può essere anche un Component. Quindi virtualmente puoi mostrare es. pannelli, più componenti ecc...Originariamente inviato da rob_santini
Se non sbaglio con JOptionPane posso avere una sola TextField, giusto?
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Ci avevo già pensato, ma la funzione getTuoiDati() deve essere eseguita DOPO che la finestra tuaDialog è stata chiusa.Originariamente inviato da andbin
Quindi il codice esterno che usa la dialog farebbe una cosa del tipo:
codice:tuaDialog.setVisible(true); String[] v = tuaDialog.getTuoiDati();
OnLine il nuovo sito: www.lasfidacontinua.it
Ma la dialog deve essere "modale"? Se modale, allora setVisible(true) ritorna solo quando la dialog viene chiusa.Originariamente inviato da rob_santini
Ci avevo già pensato, ma la funzione getTuoiDati() deve essere eseguita DOPO che la finestra tuaDialog è stata chiusa.
Se non deve essere "modale" allora si può fare ma la cosa richiede un certo "asincronismo". Nel senso che la dialog, alla chiusura, potrebbe informare il codice "client" tramite la invocazione di un metodo (ad esempio di una interfaccia ... giusto per disaccoppiare client e dialog). Oppure si può bloccare il thread corrente (se è il EDT però non puoi farlo) finché la dialog non è stata chiusa. Ma richiede comunque un sistema di "attesa/notifica" in generale (poi come farlo ... dipende).
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet