[VB.NET]: Sommare due textbox considerando segni aritmetici e decimali

di Maninblack74 il
4 risposte

Buonasera a tutti,

uso questo semplice per sommare due semplici numeri:


        Dim numero1 As Double
        Dim numero2 As Double
        Dim risultato As Double

        numero1 = TextBox1.Text
        numero2 = TextBox2.Text
        risultato = numero1 + numero2
        TextBox3.Text = risultato

Premetto che è la prima volta che mi affaccio a criteri aritmetici. Quello che a me servirebbe è una somma un pò piu' complessa, vi faccio un esempio qui di seguito:

TextBox1.Text = "-2.25"
TextBox2.Text = "+1.75"
TextBox3.Text = "????????"

I dati che vedete è la prescrizione dell lente destra di un occhiale, dove "-2.25" è il lontano e "+1.75" è il valore dell'addizione per vicino. Il risultato è la somma/differenza di questi due dati.

Non voglio codici, chiedo la gentilezza di indirizzarmi su qualche sito per studiare bene i procedimenti matematici in VB NET

Grazie

Maninblack74

4 Risposte

  • Uso linguaggi dove i tipi sono fondamentali e "trasformare" il testo in numero è una operazione determinata e non generica (non si può in genere fare numero = testo).

    Rivedere il vecchio e buon Basic fare ciò mi ha un attimo scombussolato.

    Comunque ti indico il sito di Microsoft dove sono indicate le istruzioni base integrate nel linguaggio (tramite la System.Math):

    https://learn.microsoft.com/it-it/dotnet/visual-basic/language-reference/functions/math-functions

  • 22/06/2026 - Delphinium ha scritto:

    Uso linguaggi dove i tipi sono fondamentali e "trasformare" il testo in numero è una operazione determinata e non generica (non si può in genere fare numero = testo).

    Rivedere il vecchio e buon Basic fare ciò mi ha un attimo scombussolato.

    Comunque ti indico il sito di Microsoft dove sono indicate le istruzioni base integrate nel linguaggio (tramite la System.Math):

    https://learn.microsoft.com/it-it/dotnet/visual-basic/language-reference/functions/math-functions

    grazie delle info....mi ci metto subito.

    Nel frattempo, mi è venuto in mente che c'è anche la calcolatrice di vb net dove posso attingere

    Grazie ancora

  • Io valuterei anche l'utilizzo di un NumericUpDown al posto delle TextBox: restituisce nativamente un Decimal tramite la proprietà Value, filtra le pressioni dei tasti non numerici ed ha la carineria di poter gestire gli incrementi +/-0.25 (che mi pare siano quelli standard per le lenti) e finanche impostare eventuali limiti superiori ed inferiori per una prima validazione del dato.

    Se poi uno non vuole i bottoncini per gli incrementi, imposta la HorizontalScroll.Visible = False ed è tutto fatto. Sembrerà una normale TextBox.

  • In ogni caso, se vuoi sommare il contenuto di due Textbox, è necessario prima verificare che i due valori possano essere convertiti in valori numerici. Questo puoi farlo controllando ogni carattere che viene digitato o ricorrendo a funzioni tipo TryParse()

Devi accedere o registrarti per scrivere nel forum
4 risposte