Differenze tra le versioni di "Spostare il cursore in un Terminale lungo una riga di caratteri"

Da Gambas-it.org - Wikipedia.
 
Riga 46: Riga 46:
 
    
 
    
 
  End
 
  End
 +
 +
 +
 +
=Note=
 +
[1] Vedere anche le seguenti pgine della Wiki:
 +
* [[Spostare da codice il cursore all'interno del Terminale]]
 +
* [[Stampare un punto nella console o nel Terminale alle coordinate x, y]]

Versione attuale delle 15:58, 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


Note

[1] Vedere anche le seguenti pgine della Wiki: