24/04/14 22:35
R0gerBlack
Ma che diavolo è sta roba?
If TextBox1.Text.EndsWith(",") Then
Textbox1.Text &= ",00"
End If
Se vuoi un arrotondamento decimale a due cifre (sottoforma di stringa, nel tuo caso)
Basta che usi la funzione Format
'CDbl lo uso per una conversione esplicita da string (textbox.text) a double (round)
Dim Round As Double = CDbl(Val(Textbox1.Text))
Dim numero As String = Format(Round, "0.00" )
Textbox1.Text = numero
N.B. Ricorda che in america la virgola è usata per separare i numeri ogni 3 cifre (1,000,000) mentre il punto è usato per i decimali (Es. 1,045.56) quindi, devi utilizzare il punto.
Ultima modifica effettuata da R0gerBlack 24/04/14 22:36
aaa
25/04/14 10:19
R0gerBlack
Sbagliato, il codice del tasto TAB in Visual Basic è dato dalla funzione
ProcessTabKey(ByVal forward As Boolean)
Se sovrascriviamo questa funzione con una personalizzata, puoi eseguire quello che ti serve quando viene premuto il tasto tab, prima - o dopo - della sua effettiva funzione. Anzi se vuoi puoi persino eliminarla:
'Esempio di polimorfismo: Modifichiamo la funzione originale ProcessTabKey
Protected Overrides Function ProcessTabKey(ByVal forward As Boolean) As Boolean
'Anteponiamo questo codice al costruttore MyBase
If sanzione.Focused Then
'Codice da eseguire alla pressione del tasto Tab
End If
'Richiamiamo la funzione originale:
'Se l'istruzione MyBase.ProcessTabKey(forward) viene commentata
'Il pulsante tab perderà il suo effetto
MyBase.ProcessTabKey(forward)
Return True
End Function
EDIT
Rileggendo il primo post, ho visto che vuoi anche che il pulsante invio funga da tab. Se vuoi fare questo puoi risparmiare ulteriormente codice inserendo questo codice nella Sub sanzione_KeyPress
If e.KeyCode = Keys.Enter Then
'Esegui il codice del pulsante tab sovrascritto
ProcessTabKey(True)
e.SuppressKeyPress = True
End If
Ultima modifica effettuata da R0gerBlack 25/04/14 10:43
aaa