Differenze tra le versioni di "Passare in runtime il numero del file-device 'pts' di un Terminale"

Da Gambas-it.org - Wikipedia.
Riga 19: Riga 19:
 
   
 
   
 
  '''End'''
 
  '''End'''
Il su esposto codice offre una soluzione in un programma Gambas ''a linea di comando'' per fare ciò che in un'applicazione grafica l'istruzione ''InputBox'' consente di fare: inviare dati al programma mentre è in funzione.
+
Tale codice offre una soluzione in un programma Gambas ''a linea di comando'' per fare ciò che in un'applicazione grafica l'istruzione ''InputBox'' consente di fare: inviare dati al programma mentre è in funzione.
  
  

Versione delle 08:30, 14 ago 2014

Il caso è quello in cui si deve passare al programma Gambas a linea di comando, mentre sta funzionando, il numero identificatore di un Terminale aperto. |1|

Per fare ciò si utilizzerà il file device dello standard input con la proprietà .In della Classe File:

Public Sub Main()

 Dim fl As File
 Dim s As String

' Esegue il ciclo, finché non sarà stato inviato dal Terminale al programma Gambas un carattere tramite la tastiera:
  While IsNull(s)
' Intercetta quanto scritto nel Terminale, ove è stato lanciato il programma Gambas:
    Input #File.In, s
    fl = Open "/dev/pts" &/ s For Output
' Ricevuto quanto scritto nel Terminale, lo mostra nuovamente con aggiunta di altro testo nel Terminale medesimo:
    Print #fl, "Numero file 'pts' =  " & s
  Wend

  fl.Close

End

Tale codice offre una soluzione in un programma Gambas a linea di comando per fare ciò che in un'applicazione grafica l'istruzione InputBox consente di fare: inviare dati al programma mentre è in funzione.


Note

[1] Ovviamente con il codice esposto in questa pagina è possibile passare al programma Gambas a linea di comando dal Terminale, ove esso è stato lanciato, qualunque dato in formato stringa di caratteri.