Devo cancellare l'ultimo carattere di una richtextbox che uso come finestra di log. Pensavo che bastasse aggiungerci un chr(8) che dovrebbe essere il carattere del ma non funziona.
Qualcuno sa come fare?
Devo cancellare l'ultimo carattere di una richtextbox che uso come finestra di log. Pensavo che bastasse aggiungerci un chr(8) che dovrebbe essere il carattere del ma non funziona.
Qualcuno sa come fare?
Prova con
codice:RTB.Text = RTB.Text.Remove(RBT.Text.Length - 1, 1)
Per cancellare cancella, ma poi perde tutti gli attributi dei colori e dello style e mi deiventa tutto bold.
codice:RTB.Rtf = RTB.Rtf.Remove(RBT.Rtf.Length - 1, 1)
Amaro C++, il gusto pieno dell'undefined behavior.
Si! grande funziona, ho solo dovuto usare -15 stranamente, forse alla fine ci sono un sacco di codici per concludere e chiudere determinati stili.
Grazie
Probabile... ma in tal caso credo che non sia bene cancellarli, forse è meglio usare un approccio un po' più ortodosso. Una soluzione può essere questa:
codice:RTB.SelectionStart=RTB.Text.Length-1 RTB.SelectionLength=1 RTB.SelectedText=""
Amaro C++, il gusto pieno dell'undefined behavior.
Non ho provato ma dici che funziona anche se devo cancellare solo un ritorno a capo?
Certamente.
P.S.: dimenticavo una cosa... bisogna prevedere anche il caso in cui la RTB sia già vuota... ecco la correzione:
codice:If RTB.Text.Length>0 Then RTB.SelectionStart=RTB.Text.Length-1 RTB.SelectionLength=1 RTB.SelectedText="" End If
Amaro C++, il gusto pieno dell'undefined behavior.
Provato pure questo, ma purtroppo non funziona. Continua a scrivere nella riga a capo e non mi torna sulla riga precedente e riprende da li. Ho provato ad aumentare pure li il valore fino a -15 come prima ma nulla, sempre nella stessa riga a capo.
"Riga a capo"? Ma di cosa stiamo parlando? Puoi postare il codice che effettua gli inserimenti?
Amaro C++, il gusto pieno dell'undefined behavior.