Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Tasto Invio e Textbox
Forum - C# / VB.NET - Tasto Invio e Textbox

Avatar
By Salv (Normal User)
Newbie


Messaggi: 2
Iscritto: 23/09/2010

Segnala al moderatore
Postato alle 7:54
Giovedì, 23/09/2010
Ciao A tutti, in questo mio primo post, un semplice quesito per voi, un problema per me.

Avevo postato nella sezione sbagliata

Sto creando il mio primo programmino con VB.net, devo usare un file Excel come base dati, purtroppo questo è il file che mi passano.

uso VB.net 2008 espress

Ho creato il form con alcune textbox 4-5 ed un pulsante, il problema che riscontro e il seguente, scrivo i dati nel primo textbox, e premendo "Invio" non passa al successivo, devo passarci con il tasto "Tab", Come posso fare per far passare al textbox successivo con invio, devo abilitare qualche Proprietà del form oppure dei textbox.

Premetto che ho variato anche le proprietà dei Textbox, "AcceptsReturn & AcceptsTab" mettendole a "True", ma e come se non avessi fatto niente.

forse qualche proprietà del form?

Per il momento un grazie a chi vorrà aiutarmi.

Un Saluto By Salv (8D)

PM
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2765
Iscritto: 21/09/2007

Up
0
Down
V
Segnala al moderatore
Postato alle 12:07
Giovedì, 23/09/2010

ora non ricordo esattamente il nome della proprietà, credo fosse tabindex.
ad ogni modo se vuoi scorrere gli elementi del form in un preciso ordine usando il tab devi impostare i numeri di tabindex nell'ordine corrispondente.

PM
Avatar
By Salv (Normal User)
Newbie


Messaggi: 2
Iscritto: 23/09/2010

Up
0
Down
V
Segnala al moderatore
Postato alle 12:50
Giovedì, 23/09/2010
Ciao HeDo, grazie per la risposta, ma non e quello che volevo, il tab non devo usarlo.

In effetti apro il Form1 ci sono due Textbox1-2, una l'ID utente e l'altra la Pw, metto il nominativo nella prima, poi premo invio e lo stato attivo rimane nel Textbox1 non passa al Textbox2.

Questo quello che vorrei premendo invio dovrebbe passare al Textbox2 e poi al pulsante per la conferma.

Però già all'apertura il focus non va su TextBox1 cosa che vorrei.

Ciao By Salv (8D)


PM
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Up
0
Down
V
Segnala al moderatore
Postato alle 13:02
Giovedì, 23/09/2010
Usa l'evento KeyDown (o KeyPress, non ricordo) della TextBox per verificare se invio è premuto. In questo caso, leggi il TabIndex del controllo e scorri tutti i controlli del form, trova quello il cui indice sia il successivo e usa Focus per attivarlo. Questa è una versione manuale del tabbing (che è implementato di default). Esempio:
Codice sorgente - presumibilmente VB.NET

  1. If e.KeyCode = Keys.Enter Then
  2.    For Each C As Control In Me.Controls
  3.       If C.TabIndex = DirectCast(sender, Control).TabIndex + 1 Then
  4.          C.Focus()
  5.          Exit For
  6.       End If
  7.    Next
  8. End If


PM