Differenze tra le versioni di "Immissione di dati dalla tastiera durante l'esecuzione di un programma"

Da Gambas-it.org - Wikipedia.
(Creata pagina con "Durante l'esecuzione (''runtime'') di un programma, può essere necessario che si introducano via tastiera uno o più dati, affinché il programma medesimo li elabori per i pr...")
 
Riga 20: Riga 20:
 
  '''End'''
 
  '''End'''
  
 +
 +
 +
==Invio didati dalla tastiera in un'applicazione ''a riga di comando''==
 +
Qualora, invece, l'applicazione sia ''a riga di comando'', possiamo utilizzare alcune particolari funzioni, che prevedono l'immissione dei dati nell'apposito spazio presente al di sotto della console. Qualora si utilizzi un programma eseguibile, l'immissione avverrà ovviamente dal Terminale.
 +
 +
 +
===Uso di ''Input'' e di ''Line Input''===
 +
Utilizzando la funzione ''Input'' potremo inviare al programma solo caratteri non frammezzati dal carattere dello ''spazio''. Se dunque immetteremo due gruppi di caratteri divisi da almeno un carattere dello ''spazio'' (esempio: ''abc def''), verrà raccolto da ''Input'' solo il primo gruppo.
 +
 +
Se, invece, si intende raccogliere una riga di caratteri, tra i quali siano presenti uno o più caratteri dello spazio, si dovrà utilizzare la risorsa ''Line Input''.
 +
 +
In entrambi i casi basterà prevedere l'uso di una variabile di tipo ''Stringa'' per memorizzare e dunque poter utilizzare i dati immessi da console/terminale.
 +
 +
Esempio:
 +
  '''Public''' Sub Main()
 +
 
 +
  Dim s As String
 +
 
 +
  Input s
 +
 
 +
  Print "Testo immesso: "; Quote(s)
 +
 
 +
'''End'''
  
  

Versione delle 09:54, 3 mar 2016

Durante l'esecuzione (runtime) di un programma, può essere necessario che si introducano via tastiera uno o più dati, affinché il programma medesimo li elabori per i propri scopi. Quando ciò avviene, si ha un arresto dell'esecuzione del programma (ma non il suo termine !). Tale stato di attesa continuerà sino a quando l'immissione e l'invio del dato dalla tastiera non sarà avvenuta.

L'invio dei dati dalla tastiera al programma durante la sua esecuzione deve essere ovviamente debitamente previsto con specifiche funzioni. Le modalità di invio variano a seconda del tipo di applicazione utilizzata.


Invio didati dalla tastiera in un'applicazione grafica

Qualora l'applicazione si sviluppi in ambiente grafico, possiamo utilizzare l'apposita funzionalità prevista: InputBox() . Quando l'esecuzione del codice incontra detta funzione, viene aperta una finestra con un apposito spazio per l'immissione di uno o più caratteri. L'InputBox ritorna quanto immesso come vaore di tipo Stringa; pertanto, se il valore immesso da utilizzare è un numero, dovrà chiaramente essere convertito in valore numerico.


Mostriamo un esempio generico:

Public Sub Form_Open()
 
 Dim s As String
 
  s = InputBox("Immettere un testo:")
  
  Print "Testo immesso: "; Quote(s)
  
End


Invio didati dalla tastiera in un'applicazione a riga di comando

Qualora, invece, l'applicazione sia a riga di comando, possiamo utilizzare alcune particolari funzioni, che prevedono l'immissione dei dati nell'apposito spazio presente al di sotto della console. Qualora si utilizzi un programma eseguibile, l'immissione avverrà ovviamente dal Terminale.


Uso di Input e di Line Input

Utilizzando la funzione Input potremo inviare al programma solo caratteri non frammezzati dal carattere dello spazio. Se dunque immetteremo due gruppi di caratteri divisi da almeno un carattere dello spazio (esempio: abc def), verrà raccolto da Input solo il primo gruppo.

Se, invece, si intende raccogliere una riga di caratteri, tra i quali siano presenti uno o più caratteri dello spazio, si dovrà utilizzare la risorsa Line Input.

In entrambi i casi basterà prevedere l'uso di una variabile di tipo Stringa per memorizzare e dunque poter utilizzare i dati immessi da console/terminale.

Esempio:

 Public Sub Main()
 
 Dim s As String
 
  Input s
  
  Print "Testo immesso: "; Quote(s)
  
End




Pagina in costruzione !