aiuto con JTextArea

Pubblicità

franco7scala

Utente Attivo
Messaggi
40
Reazioni
0
Punteggio
26
ciao,
sto facendo un interfaccia grafica per un semplice prgrammino che gestisce delle utenze. in una jtextarea ci sono tutti gli utenti ognuno per ogni riga. quando ne aggiungo uno faccio area.append(u.toString()) u sarebbe un Utente.
come potrei fare a cancellare la riga contenente un utente che devo eliminare???



grazie


ciao
 
Per rimuoverlo, che informazione richiedi? Il nominativo, numero di riga, ...?

In ogni caso, potrebbe risultarti utile il seguente metodo:

JTextArea (Java 2 Platform SE v1.4.2)

oppure usi direttamente il setText, usando come parametro la concatenazione del testo prima della stringa che vuoi eliminare e il testo dopo la stringa che vuoi rimuovere :)
 
Potresti fare così, dovrebbe funzionare (non l'ho provato)... ci sono moltissimi modi diversi per farlo, in questo caso vengono rimossi tutti gli utenti con un certo nome, anche duplicati (se vuoi eliminare solo il primo con un certo nome, usa replaceFirst al posto di replaceAll):

Codice:
String nomeDaEliminare = .......... ;

area.setText(area.getText().replaceAll(nomeDaEliminare + "\n", ""));
 
funziona, solo una cosa non va:
quando mi elimina la riga mi lascia 2 di questi "|"
io ho fato cosi:
Codice:
String del = new Utente(LLGUI.this.cognome.toUpperCase(), LLGUI.nome.toUpperCase()).toString() ;
	    		area.setText(area.getText().replaceAll(del + "\n", ""));
[\CODE]

QUESTO è IL TO STRING DELL'UTENTE:

[CODE]
public String toString(){
		return leftAlign(cognome,12)+" | "+leftAlign(nome,12)+" | "+id;
	}
	public static String leftAlign (String str, int size){
	    int len = str.length () > size ? size : str.length ();
	    char[] buf = new char[size];
	    str.getChars (0, len, buf, 0);
	    while (len < size)
	        buf[len++] = ' ';
	    return new String (buf);
	}
[\CODE]

GRAZIE
 
Pubblicità
Pubblicità
Indietro
Top