12/04/14 14:10
Roby94
Devi fare una verifica sul valore del texbox, dovrebbe essere un numero!
Oppure puoi risolvere sostituendo il textbox con un componente che accetta solo numeri.
aaa
12/04/14 19:55
R0gerBlack
Postato originariamente da nessuno:
Postato originariamente da R0gerBlack:
ma anche 2108,99 = 2108
No ... in quel caso vale 2109
@nessuno, che io sappia il tipo Integer tronca il valore decimale, non lo arrotonda (7/4 = 1), quindi dovrebbe essere lo stesso 2108, comunque sembra che in VB.NET si tenda ad arrotondarlo.
@ju89 metti questo codice all'inizio della sub
If value = "" Then
Return
End If
Comunque puoi isolare il codice in un Try-Catch per evitare altri tipi di errori (tipo se viene inserita una stringa)
Ultima modifica effettuata da R0gerBlack 13/04/14 9:12
aaa
12/04/14 22:23
Il tipo è un tipo e non esegue nulla.
E' l'operazione di conversione tra la stringa e l'integer (che passa da un reale) che esegue l'approssimazione. Succede anche in VB6 ...
Fra l'altro, personalmente non mi piace affatto una scrittura come
x = ....Text
perché una conversione esplicita evita problemi "nascosti".
14/04/14 16:27
Roby94
Allora, forse non ci siamo spiegati bene, il cast è la conversione di un tipo in un altro, tipi simili ma con rage diversi non hanno grandi problemi di cast, in quanto se il rage è adeguato questi possono convertirsi implicitamente, se invece i due tipo non hanno nulla a che fare tra loro, come il decimale e la stringa, serve una funzione che si occupi di questa conversione, in C# esiste il Parse devi trovare quale funzione permette questo cast esplicito in VB .NET
aaa
14/04/14 18:16
R0gerBlack
ju89 scusa non ho tenuto conto del fatto che in teoria un Decimal non potrebbe neanche avere il valore "", quindi dovresti scrivere all'inizio della procedura
If sanzione.Text = "" Then
Return
End If
L'idea di una conversione esplicita non è male, ma sinceramente in VB.NET che si tollera di tutto non mi sembra così necessaria per un programma amatoriale.
Ultima modifica effettuata da R0gerBlack 14/04/14 19:14
aaa
14/04/14 18:42
Se si vuole imparare a programmare, sin dai primi programmi, è necessario utilizzare le corrette metodologie.