ju89 (Normal User)
Pro
Messaggi: 61
Iscritto: 26/03/2014
|
Ho due quesiti da risolvere.
1) Invece del tasto tab per andare alla textbox successiva,posso usare il tasto invio?Se si, come posso fare?
2) Quando inserisco un numero nella prima textbox (esempio: 5800), una volta premuto il tasto invio per andare alla textbox successiva, mi dovrebbe ridare 5800,00 è possibile?Se si, come?
Vi ringrazio anticipamente.
|
|
amreo (Normal User)
Pro
Messaggi: 93
Iscritto: 18/03/2013
|
Per completare la textbox in automatico potresti fare cosi
All'evento KeyPress delle textbox puoi verificare il tasto.
se è invio, cambia il controllo selezionato.
Usando
Codice sorgente - presumibilmente Plain Text |
Me.ActiveControl = TextBox2
|
ES:
Codice sorgente - presumibilmente VB.NET |
Private Sub TextBox1_KeyPress(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown If e.KeyCode = Keys.Enter Then Me.ActiveControl = TextBox2 End If End Sub
|
il punto 2 non ho ben capito.
NB: se usi questo procedimento non puoi usare il carattere VbCrLf per i testi nelle textboxs |
|
ju89 (Normal User)
Pro
Messaggi: 61
Iscritto: 26/03/2014
|
Si perfetto il punto 1 anche io avevo trovato questo codice in giro su internet ma se premo invio si sente il "beep" di windows, cosa che non vorrei si sentisse.
Per il punto 2) ho una textbox dove inserire un valore in €, quando lo inserisco rimane (prendendo l'esempio di 5800€) 5800. Io vorrei che uscisse 5800,00
|
|
amreo (Normal User)
Pro
Messaggi: 93
Iscritto: 18/03/2013
|
Io userei NumericUpDown, che gestisce valori numerici. se scegli tale è molto semplice impostare la virgola
basta che imposti le proprietà nella finestra di progettazione
NumericUpDown1.NumericPlaces = 2
NumericUpDown1.Maximium = 100000000000000
in alternativa, quando premi enter,
controllare la fine con textbox1.text.endwith(",") e aggiungerci la virgola è gli 0
tipo
If TextBox1.Text.EndWith(",") Then
Textbox1.Text &= ",00"
End If
|
|
ju89 (Normal User)
Pro
Messaggi: 61
Iscritto: 26/03/2014
|
Poi quando torno a casa provo, ti ringrazio intanto. Per quanto riguarda il "beep" ogni volta che premo invio? Come posso risolvere questo problema?
|
|
amreo (Normal User)
Pro
Messaggi: 93
Iscritto: 18/03/2013
|
Non c'avevo fatto caso XD
|
|
ju89 (Normal User)
Pro
Messaggi: 61
Iscritto: 26/03/2014
|
Neanche io, poi una volta acceso le casse... Soluzioni in merito?
|
|
ju89 (Normal User)
Pro
Messaggi: 61
Iscritto: 26/03/2014
|
Risolto il beep dell'invio inserendo questo codice
Codice sorgente - presumibilmente C# / VB.NET |
e.SuppressKeyPress = True
|
il codice completo è:
Codice sorgente - presumibilmente VB.NET |
Private Sub sanzione_KeyPress(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles sanzione.KeyDown If e.KeyCode = Keys.Enter Then Me.ActiveControl = speseadd rateautorizzate.Text = (sanzione.Text) / 105 e.SuppressKeyPress = True End If End Sub
|
spero sia utile a qualcuno in difficoltà.
Poi domani pomeriggio testo l'altra riga di codice per il completamento dei numeri. |
|
ju89 (Normal User)
Pro
Messaggi: 61
Iscritto: 26/03/2014
|
Postato originariamente da amreo:
If TextBox1.Text.EndWith(",") Then
Textbox1.Text &= ",00"
End If
|
Permettimi di correggerti, il codice corretto sarebbe:
Codice sorgente - presumibilmente Delphi |
If TextBox1.Text.EndsWith(",") Then Textbox1.Text &= ",00" End If
|
ti eri dimenticato la s di End.
Comunque tornando a noi, se digito una sanzione di 5800€ tutto bene, premendo il tasto invio il programma mi completa 5800 con 5800.00, se invece metto 5800.30 nella textbox il programma me lo completa con 5800.30.00 e qui è sbagliato, quando inserisco i decimali non dovrebbe inserire gli zeri, aiuti in merito? Grazie! |
|