Recuperare numeri dalle caselle di testo
In questa lezione vedremo come recuperare i numeri dalle caselle di testo per poi elaborarli all’ interno del nostro codice.
Creiamo un nuovo progetto: File > New Project dalla barra principale di visual C#.
Aggiungiamo una casella di testo ed un bottone, che dovranno avere le seguenti proprietà.
Casella di testo:
Name: tbFirstNumber
Size: 50, 20
Location: 40, 35
Text: 10
Bottone:
Name: btnAnswer
Size: 75, 25
Location: 90, 90
Text: Answer
Il vostro form avrà quindi un aspetto simile a quello a seguito:

Il nostro obiettivo iniziale è quello di recuperare il numero 10 dalla casella di testo e visualizzarlo in una messageBox;
Fate doppio-click sul bottone per entrare nella schermata relativa al suo codice, dopodiché dichiarate le seguenti variabili:
int firstTextBoxNumber;
int answer;
La vostra finestra di codice dovrebbe essere simile a quella qui sotto riportata:

Per recuperare il numero 10 è necessario utilizzare una funzione delle caselle di testo.
Aggiungete le seguente istruzioni al vostro codice:
firstTextBoxNumber = tbFirstNumber.Text;
tbFirstNumber.Text permette di recuperare il contenuto della casella di testo e di salvarlo all’interno della variabile firstTextBoxNumber.
Se provate ad eseguire il programma potrete subito intuire che è stato commesso un errore:

L’errore qui sopra- riportato indica che non è possibile salvare il contenuto di una casella di testo all’interno di una variabile di tipo int.
Abbiamo quindi bisogno di convertire la stringa ’10′ in numero intero prima di poterlo salvare all’interno della variabile firstTextBoxNumber.
Aggiungete al codice la seguente stringa:
firstTextBoxNumber = int.Parse( tbFirstNumber.Text );
Grazie a questa funzione è possibile convertire il testo proveniente dalla textBox in intero, che verrà poi salvato nella variabile firstTextBoxNumber.
Nel nostro caso ‘tbFirstNumber.Text’ conterrà il valore 10:
firstTextBoxNumber = int.Parse( “10″ );
Il numero 10 scritto fra apici sta ad indicare una stringa alfanumerica.
Eseguite il programma e vedrete che non vi saranno errori di alcun genere.
E’ in oltre possibile utilizzare il Parse per differenti tipi di variabili:
galleggiante firstTextBoxNumber;
firstTextBoxNumber = float.Parse ( tbFirstNumber.Text );
Oppure questa:
doppio firstTextBoxNumber
firstTextBoxNumber = double.Parse ( tbFirstNumber.Text );
Ora che abbiamo recuperato il numero 10 non ci resta altro che visualizzarlo in una message-box.
Utilizzando il Parse recuperate il numeri contenuto nella casella di testo.
Per visualizzare il numero in una finestra di messaggio, aggiungere questa linea di codice:
MessageBox.Show (firstTextBoxNumber.ToString ());
Ora proveremo ad inserire un ulteriore campo testo, ed utilizzeremo i valori interi contenuti in entrami i campi, per calcoli matematici.
Create il campo testo e settate le seguenti proprietà:
Nome: tbSecondNumber
Dimensioni: 50, 20
Località: 165, 35
Testo: 5
Il vostro form sarà simile a questo:

Entrate nel codice del bottone e dichiarate una nuova variabile intera:
int secondTextBoxNumber;
Per memorizzare il numero contenuto nella casella di testo in questa nuova variabile, aggiungete il seguente codice:
int secondTextBoxNumber;
secondTextBoxNumber = int.Parse ( tbSecondNumber.Text );
Dopodiché sommiamo il contenuto delle due caselle di testo:
answer = firstTextBoxNumber + secondTextBoxNumber;
Ed ora visualizziamo il risultato contenuto il answer in una messageBox:
MessageBox.Show ( answer.ToString (answer) );
Testate il corretto funzionamento del codice:

Esercizio
Utilizzate le caselle di testo del form per i seguenti calcoli:
1845 + 2858
3450 – 285
35 * 85
5656 / 7
(Le risposte che si dovrebbero ottenere sono: 4703, 3165, 2957 e 808).
Esercizio
Aggiungete al form una nuova casella di testo. Impostate una variabile intera per memorizzare un terzo numero.
dopodiché utilizzate le caselle di testo per fare i seguenti calcoli:
(1845 + 2858) – 356
(3450 – 285) * 12
35 * (85 – 8 )
(5656 / 7) + 2156
(Le risposte che si dovrebbero ottenere sono: 4.347, 37.980, 2.695 e 2.964)
<-La moltiplicazione e la divisione in C#
[...] Recuperare numeri dalle caselle di testo-> [...]
[...] <-Recuperare numeri dalle caselle di testo [...]
[...] Recuperare i numeri dalle caselle di testo [...]