Differenze tra le versioni di "Spostare il cursore in un Terminale lungo una riga di caratteri"
Da Gambas-it.org - Wikipedia.
Riga 8: | Riga 8: | ||
Dim fl As File | Dim fl As File | ||
− | s = "aaa bbb cccc ddd eee ffff gggg hhhh iiii llll mmmm nnnn oooo pppp qqqq rrr ssss tttt vvvvv uuuu zzz | + | s = "aaa bbb cccc ddd eee ffff gggg hhhh iiii llll mmmm nnnn oooo pppp qqqq rrr ssss tttt vvvvv uuuu zzz" |
− | |||
<FONT color=gray>' ''Va verificato se è necessaria l'attivazione della seguente riga:'' | <FONT color=gray>' ''Va verificato se è necessaria l'attivazione della seguente riga:'' | ||
Riga 19: | Riga 18: | ||
Wait 3 | Wait 3 | ||
− | <FONT color=gray>' ''Sposta il cursore | + | <FONT color=gray>' ''Sposta il cursore 80 caratteri a sinistra lungo la riga:''</font> |
− | For i = 1 To | + | For i = 1 To 80 |
Write #fl, "\x08" | Write #fl, "\x08" | ||
Next | Next | ||
Riga 26: | Riga 25: | ||
Wait 3 | Wait 3 | ||
− | <FONT color=gray>' ''Salta di 8 caratteri alla volta a destra | + | <FONT color=gray>' ''Salta di 8 caratteri alla volta a destra per 10 volte lungo la riga:''</font> |
For i = 1 To 10 | For i = 1 To 10 | ||
Write #fl, "\x09" | Write #fl, "\x09" | ||
Riga 34: | Riga 33: | ||
Wait 2 | Wait 2 | ||
− | <FONT color=gray>' ''Sposta (ora più lentamente) il cursore di | + | <FONT color=gray>' ''Sposta (ora più lentamente) il cursore di 90 caratteri a sinistra lungo la riga:''</font> |
− | For i = 1 To | + | For i = 1 To 90 |
Write #fl, "\x08" | Write #fl, "\x08" | ||
Wait 0.05 | Wait 0.05 |
Versione delle 07:42, 25 set 2023
Per poter spostare il cursore lungo una riga di caratteri all'interno del Terminale, dovremo inviare i comandi necessari, costituiti in tal caso semplicemente da caratteri escape, al file-device "/dev/stdout" del Terminale medesimo.
Mostriamo di seguito un esempio "a riga di comando" che dovrà essere compilato e lanciato direttamente dal Terminale:
Public Sub Main() Dim i As Integer Dim s As String Dim fl As File s = "aaa bbb cccc ddd eee ffff gggg hhhh iiii llll mmmm nnnn oooo pppp qqqq rrr ssss tttt vvvvv uuuu zzz" ' Va verificato se è necessaria l'attivazione della seguente riga: ' Shell "export TERM=xterm" fl = Open "/dev/stdout" For Write Write #fl, s Wait 3 ' Sposta il cursore 80 caratteri a sinistra lungo la riga: For i = 1 To 80 Write #fl, "\x08" Next Wait 3 ' Salta di 8 caratteri alla volta a destra per 10 volte lungo la riga: For i = 1 To 10 Write #fl, "\x09" Wait 0.3 Next Wait 2 ' Sposta (ora più lentamente) il cursore di 90 caratteri a sinistra lungo la riga: For i = 1 To 90 Write #fl, "\x08" Wait 0.05 Next Wait 4 ' Va in chiusura: Shell "clear" ' Pulisce la finestra del terminale fl.Close End