Pseudo-ProgressBar in un'applicazione 'a riga di comando'

Da Gambas-it.org - Wikipedia.

Se si scrivendo un'applicazione a riga di comando (quindi senza supporto grafico), evidentemente non sarà possibile utilizzare l'oggetto grafico ProgressBar. Per ottenere, allora, in console/Terminale un effetto simile ad una ProgressBar, può essere utilizzata una soluzione, che adopera ovviamente caratteri, simile alla seguente:

Private Const LUNGHEZZA As Byte = 50


Public Sub Main()
 
 Dim b, c, d As Byte

 Repeat
   Inc b
   For d = 1 To 100 / LUNGHEZZA 
     Inc c
     Write "\r\e[42m" & Space(b) & "\e[0m" & Space(LUNGHEZZA + 1 - b) & c & "%"
     Flush
     Wait 0.05
   Next
 Until b == LUNGHEZZA
 
End

Se si vorrà avere l'effetto di una barra colorata (in verde), la riga con la funzione "Write" dovrà essere cambiata così:

 Write "\r\e[42m" & Space(b) & "\e[0m" & Space(51 - b) & CStr(c) & "%"