Domanda

Quando modifichi una cella in una tabella, il valore viene reso permanente solo se lo stato attivo viene modificato o se si preme un colpo (ad esempio se si modifica il valore della cella da "abc" a "xyz" e si chiude la finestra la modifica è persa). Come posso rendere permanente la modifica quando l'utente interrompe la modifica?

Suppongo che dobbiamo aggiornare il valore della cella mentre viene modificato il valore della cella, ma non sono sicuro di come. Qualsiasi aiuto è apprezzato!

Grazie in anticipo!

È stato utile?

Soluzione

Vorrei impostare un ActionListener sulla cella che salva il valore della cella in una variabile dopo ogni sequenza di tasti (supponendo che la cella abbia lo stato attivo). Quindi, qualunque cosa accada alle finestre, questa variabile conterrà comunque tutto ciò che era attualmente nella cella. Abbastanza semplice.

Altri suggerimenti

// tell JTable to stop editing and save any changes when the table
// loses focus. This means edits will be saved when clicking on 
// another component, eg: button.
table.putClientProperty("terminateEditOnFocusLost", Boolean.TRUE);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top