"Andare a capo" in un oggetto di testo
Per far andare a capo su una nuova riga il testo all'interno di un oggetto di testo, esistono vari modi:
- \n
- gb.NewLine
- chr(10)
- \x0A
- gb.Lf
- vettore_Byte.ToString() [Nota 1]
Esempio con una Label:
Public Sub Button1_Click() Dim bb As Byte[] = [10] Label1.Text = "Questa è la\nprova 1" & gb.NewLine & "prova 2" & Chr(10) & "prova 3" & "\x0Aprova 4"& gb.Lf & "prova 5" & bb.ToString(0, 1) & "prova 6" End
Nella Label avremo:
Questa è la
prova 1
prova 2
prova 3
Ritorno a capo in un MessageBox
Per introdurre in generale nell'oggetto MessageBox il comando “a capo” in una riga, usare il carattere Chr(10):
Message.Info("Prima linea " & Chr$(10) & "Seconda Linea")
oppure il carattere escape \n
Message.Info("Prima linea " & "\n" & "Seconda Linea")
oppure il codice html <BR>
Message.Info("Prima linea<BR>Seconda Linea")
oppure gb.newline
Message.Info("Prima linea" & gb.newline & "Seconda Linea")
oppure il carattere escape esadecimale "\x0A":
Message.Info("Prima linea\x0ASeconda Linea")
oppure, volendo, è possibile utilizzare un vettore di tipo Byte[] contenente un valore uguale a 10
Dim bb As Byte[] = [&0A] Message.Info("Prima linea" & bb.ToString() & "Seconda Linea")
Avremo sempre nella finestra del Message:
Prima Linea
Seconda Linea
I suddetti comandi possono essere anche usati contestualmente, se il progetto ha attivati i componenti gb.gui o gb.gtk.
Se si intende, invece, utilizzare il componente gb.qt4, bisogna ricordare che i comandi "\n", "Chr$(10)" e "gb.newline" sono attualmente incompatibili con la presenza anche del codice html "<BR>".
Se infatti saranno utilizzati insieme:
Message.Info("Prima linea<BR>Seconda Linea\nTerza Linea")
si otterrà nella finestra del Message un risultato diverso da quello atteso:
Prima Linea
Seconda LineaTerza Linea
Si deve precisare che più in generale, con il componente gb.qt4 attivo, non è ammessa la compresenza di qualunque codice html con i predetti comandi per andare a capo: "\n", "Chr$(10)" e "gb.newline" .
prova 4
prova 5
prova 6
Andare a capo negli oggetti di testo con proprietà che supportano il codice HTML
Invece, quando si usano le proprietà degli oggetti di testo che supportano il codice html, si deve utilizzare il codice <BR>. [Nota 2]
Esempio con una TextLabel:
Public Sub Button1_Click() TextLabel1.Text = "Questa è<BR>l'unica prova." End
Nella TextLabel avremo:
Questa è
l'unica prova.
Così pure con la proprietà .RichText della TextEdit si utilizzerà il tag <BR> dell'HTML. Però se con la TextEdit si usa invece la proprietà .Text (che non supporta il protocollo HTML), si utilizzeranno nuovamente i comandi:
- \n
- Chr(10)
- gb.NewLine
- \x0A
- gb.Lf
- vettore_Byte.ToString()
Note
[1] Per andare a capo, potrà essere utilizzato anche il metodo .ToString() dei vettori di tipo Byte[] ovviamente con il valore 10.
[2] Vedi nota per il MessageBox.