SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => VB .NET => Mensaje iniciado por: Cajami en Viernes 17 de Marzo de 2006, 02:40

Título: Crear Procedimiento Keypress
Publicado por: Cajami en Viernes 17 de Marzo de 2006, 02:40
Hola amigos del foro, bueno mi duda es la siguiente: Puedo crear procedimientos para varios controles, por ejemplo en un form tengo 3 textbox y creo un procedimiento para que cuando el cursos llegue al objeto se seleccione el texto si lo ubiece, bueno es es facil:

Private Sub Foco(ByVal sender As Object, ByVal e As EventArgs) Handles TextBox1.GotFocus, TextBox2.GotFocus, TextBox3.GotFocus
        CType(sender, TextBox).SelectAll()
        CType(sender, TextBox).Select()
    End Sub

Bueno eso es facil, es mencionar despues del Handles los textbox en este caso, ahora mi duda es que como puedo hacer para que en vez del evento GotFocus sea el evento KeyPress, lo he intentado y he llegado hasta aqui:

 Private Sub Pasar(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress, TextBox2.KeyPress, TextBox3.KeyPress
        If e.KeyChar = ChrW(13) Then


        End If
    End Sub

Ahora el problema es que voy a poner dentro de ese If, la verdad quiero que al presionar Enter ps el cursos se mueva al control siguiente, asi como funciona presionando Tab, creo que los controles tienes la propiedad TabIndex, como hacerlo que se mueva sin necesidad de escribir el objeto a seguir, por ejemplo

TextBox2.Focus, ps eso lo quiero, asi como la tecla Tab, asi quiero al presionar el Enter, bueno espero me hayan comprendido, nos vemos

__________________________________________________________
El Estudio y el Amor no se juntan, pero hacen al ser humano completo
Título: Re: Crear Procedimiento Keypress
Publicado por: senzao18 en Miércoles 22 de Marzo de 2006, 20:38
En el evento KeyDown del Formulario ponle

Código: Text
  1.  
  2.  If e.KeyCode = Keys.Enter Then
  3.             SendKeys.Send("{TAB}")
  4.  End If
  5.  
  6.  
Y pon la propiedad KeyPreview del Formulario a True


O bien

Código: Text
  1.  
  2. Private Sub Pasar(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown, TextBox2.KeyDown, TextBox3.KeyDown
  3.  
  4.  If e.KeyCode = Keys.Enter Then
  5.             SendKeys.Send("{TAB}")
  6.  End If
  7.  
  8. End Sub
  9.  
  10.  

El que decisas usar no te quitara la tarea de acomodar el TabIndex de los controles que recibiran el FOCO. :comp:
Título: Re: Crear Procedimiento Keypress
Publicado por: Cajami en Sábado 25 de Marzo de 2006, 16:46
Gracias Senzao18, como lo estaba pensando hacer ps no cubre todas mis expectativas, muchas gracias, nos vemos.


________________________________________________________
El Estio y El Amor no se juntan, pero hacen al ser humano completo