Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6
In occasione del proprio Snapdragon Summit Qualcomm annuncia i due nuovi chip per dispositivi mobile di fascia alta che entreranno nel mercato nel corso del 2027: tanta potenza a disposizione per elaborazioni di intelligenza artificiale sempre più complesse
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole!
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole!
Hogwarts arriva in fascia media grazie a realme, con una special edition che unisce la Quadra Light-Sensing Color-changing Tech, un baule in stile Hogwarts Express pieno di collezionabili e una scheda tecnica sostanzialmente identica al 16 Pro di partenza: ecco cosa cambia davvero, come si comporta nell'uso quotidiano e quanto vale in base al prezzo di 699,99 euro
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
REDMI Note 17 Pro porta in fascia media una batteria da 8.340 mAh con ricarica HyperCharge a 67W, un display AMOLED da 6,83 pollici capace di picchi di luminosità molto elevati e una struttura certificata TÜV SÜD contro cadute e infiltrazioni d'acqua, il tutto racchiuso in una scocca da 223 grammi. Lo abbiamo provato per diversi giorni tra fotocamera, prestazioni, autonomia e prezzo sul mercato italiano
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 09-10-2009, 14:11   #1
Scarcrow
Member
 
Iscritto dal: Oct 2006
Messaggi: 36
[Java]Esportare i dati da Jtextfield

Salve a tutti

Vi spiego la mia situazione, ho creato una finestra di dialogo con la joptionpane, dove inserire un valore intero, con il quale si apre una jdialog, che a seconda del intero precedentemente inserito, crea un tot di tab con all'interno un jpanel che contiene jtextfild e jcombobox, tutti uguali per ogni tab.

Ora il mio problema è come catturare i dati presenti nei campi di testo e nelle combobox provenienti da tutti i tab, e renderli disponibili per la sucessiva esportazione in un file di testo al termine delle sucessive operazioni.
Scarcrow è offline   Rispondi citando il messaggio o parte di esso
Old 09-10-2009, 17:57   #2
fero86
Senior Member
 
Iscritto dal: Oct 2006
Città: Roma
Messaggi: 1383

http://java.sun.com/javase/6/docs/ap...html#getText()
http://java.sun.com/javase/6/docs/ap...SelectedItem()
fero86 è offline   Rispondi citando il messaggio o parte di esso
Old 12-10-2009, 10:09   #3
Scarcrow
Member
 
Iscritto dal: Oct 2006
Messaggi: 36
bè si...ma allora non mi sono spiegato bene se mi rispondi così, ti mostro la classe che ho creato per realizzare la jdialog con i tab

Codice:
super(parent, "Movimentazione", true);
            Container cnt = getContentPane();
            cnt.setLayout(new BoxLayout(cnt, BoxLayout.Y_AXIS));
            JTabbedPane jtab = new JTabbedPane();
            JPanel[] panel = new JPanel[x];
            for(int k = 0; k<x;k++){
                panel[k] = new JPanel();
                
                JLabel[] lbl = new JLabel[20];
                
                JComboBox[] jcbox = new JComboBox[3];
                String[] strMov = {"Codice Ditta Sogg. Obb.: ", ecc ecc};
                String[] tipoString =  {"A","C", "D", "E", "F", "G","R"};
                String[] tipoRic = {"I", "C", "A","D"};
                String[] tipoReg = {"M", "L","S","D","G","F","N","C"};
                int nL = 0;
                for (int j = 0; j< strMov.length;j++){
                    lbl[nL] = new JLabel(strMov[j]);
                    nL++;
                }
                
                txt[0] =new JFormattedTextField("nome");
                txt[0].setVisible(false);
                txt[1] = new JFormattedTextField(createFormatter("#############"));
                txt[2] = new JFormattedTextField(createFormatter("########"));
                jcbox[0] = new JComboBox(tipoString);
ecc
ecc
panel[k].add(txt[8]);
jtab.addTab("Mov"+(k+1), panel[k]);
cnt.add(jtab);
questo mi mostra come ho detto prima la finestra di dialogo con x tab, e ognuna di queste ha esattamente gli stessi campi. Il mio problema è prendere tali valori in tutte le tab!
spero di essere stato più chiaro
grazie
Scarcrow è offline   Rispondi citando il messaggio o parte di esso
Old 12-10-2009, 14:35   #4
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Una soluzione è astrarre il tipo di dato aggregato X che l'utente deve formare e definire un editor per quel tipo di dato dove con "editor" intendo semplicemente un componente interattivo, dotato del numero necessario di controlli, per il quale siano defniti un mutatore ed un accessore di tipo X.

Fatto ciò quando devi fornire al'utente la possibilità di creare il valore - composto - X, inserisci nell'interfaccia l'editor per X e quando vuoi recuperare il valore modificato usi l'accessore dell'editor.

Si tratta comunque di un problema di architettura e questa è solo una delle possibili soluzioni.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 12-10-2009, 19:01   #5
Scarcrow
Member
 
Iscritto dal: Oct 2006
Messaggi: 36
Quote:
Originariamente inviato da PGI-Bis Guarda i messaggi
Una soluzione è astrarre il tipo di dato aggregato X che l'utente deve formare e definire un editor per quel tipo di dato dove con "editor" intendo semplicemente un componente interattivo, dotato del numero necessario di controlli, per il quale siano defniti un mutatore ed un accessore di tipo X.

Fatto ciò quando devi fornire al'utente la possibilità di creare il valore - composto - X, inserisci nell'interfaccia l'editor per X e quando vuoi recuperare il valore modificato usi l'accessore dell'editor.

Si tratta comunque di un problema di architettura e questa è solo una delle possibili soluzioni.
non ho capito quello che vuoi dire
Scarcrow è offline   Rispondi citando il messaggio o parte di esso
Old 12-10-2009, 19:38   #6
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
I componenti che visualizzi a seconda del valore scelto dall'utente nella prima finestra hanno una loro ragione d'essere: se visualizzi un certo gruppo di componenti anzichè un'altro sarà perchè quel gruppo esprime i valori che sono necessari affinchè il tuo programma possa produrre un certo "dato".

Dato può essere una stringa o dieci stringhe, o tre stringhe, due interi, ventimila enumerativi e tre byte - s'è c'è più di un'informazione in quel dato si parla di aggregato.

Bene, quello che fai quando dici all'utente "scegli un valore che poi ti faccio vedere io che componenti devi usare" è permettere all'utente di formare uno tra diversi tipi di dato aggregato.

Una soluzione al tuo problema di design sfrutta esattamente questa comunione trai diversi controlli dell'interfaccia: tutti quanti partecipano alla produzione di un unico valore - del tipo specificato nel dato aggregato.

Hai da una parte il tuo dato:

Codice:
public class Dato {
    private String nome, cognome, azienda, tricche e ballacche;
    private int[] matrice;
    private List<String> ecchessaramai;

    ...getter e setter (tecnicamente accessori e mutatori) a strafottere
}
e per questo dato crei UN editor, uno solo che ti fa da centro di controllo:

Codice:
public class Editor {
    private JComponent component;

    public Dato get() {return component;}

    public void set(Dato d) {...}

    public JComponent getComponent() {...}

    public void setListener o setObserver o quel che preferisci.
}
In editor dichiari tutti i controlli che ti servono, direttamente o indirettamente,per creare o modificare un Dato. Questi controlli li aggiungi a component, direttamente o tramite altri contenitori - puoi anche non esporre il componente principale dell'editor e usare una o più finestre. Nel metodo get crei un'istanza di Dato, la riempi con i valori dei controlli gestiti dall'editor e larestituisci. Nel set fai il contrario.

Il listener o l'observer o quel che preferisci è il tramite per notificare al resto del programma che l'editor ha prodotto un valore.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6 Qualcomm annuncia la nuova generazione di SoC Sn...
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole! realme 16 Pro Harry Potter Edition: il nuovo mid...
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce Recensione REDMI Note 17 Pro: il midrange con ba...
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
Porsche mette alla prova i Tesla Superch...
Roborock Saros 20 Flow Complete arriva i...
Basta un comando digitato nel terminale ...
La corsa alla superintelligenza è...
Le memorie cinesi sfidano sé stes...
Dash cam 4K con doppia telecamera, GPS, ...
Qwen 4: Alibaba conferma l'addestramento...
Super El Niño, allarme globale: 451.000 ...
Toyota, 400.000 robot in fabbrica senza ...
Hanno bucato l'FBI e ora dettano le cond...
Standard sì, licenze no: la linea di Ope...
Guida all'acquisto: quale smartphone HON...
PS6 e nuova XBOX, i SoC avrebbero supera...
Alcuni frigoriferi smart di Samsung si a...
Italiani e IA, l'entusiasmo cala: avanti...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 16:31.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v