• Domingo 22 de Diciembre de 2024, 18:55

Autor Tema:  Declarar Nombre  (Leído 1485 veces)

jorge_sep1969

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Declarar Nombre
« en: Viernes 23 de Diciembre de 2005, 04:47 »
0
Private Sub TextBox3_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox3.KeyPress

        If KeyAscii = 13 Then

            TextBox4.Focus()

        End If

    End Sub

El programa me pide declarar el nombre KeyAscii, es un programa que estoy realizando en visual basic de visual studio.net, haber si me ayudan, gracias

jivanjira

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Re: Declarar Nombre
« Respuesta #1 en: Viernes 23 de Diciembre de 2005, 05:55 »
0
hola.
el codigo que estas utilizando es de vb6.0
en vbnet varia un poco, para accerder a la variable que contiene el ascii de la tecla presionada el es siguiente:
 If (Asc(e.KeyChar)) = 13 Then
            MsgBox("Hola")
textBox4.focus

        End If

Espero que te sirva, bye

sI TE DAS CUENTA TIENES QUE HACER USO DEL OBJETO E, EL EN UNA DE SUS PROPIEDADES CONTIENE AL CARARTER DE LA TECLA PRESIONADA, LUEGO ESA TECHA LA CONVIERTES A ASCII Y YA ESTA
Espero que te sirva, bye

senzao18

  • Miembro HIPER activo
  • ****
  • Mensajes: 553
    • Ver Perfil
Re: Declarar Nombre
« Respuesta #2 en: Viernes 23 de Diciembre de 2005, 17:59 »
0
Hola :D.

Si lo quenecesitas es hacer que el sistema cambie de control al presionar Enter podrias usar el evento KeyDown del Formulario

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

Para esto tienes que asignar a la propiedad KeyPreView del Formulario el valor de True.

Y listo.

Recuerda que con esto el control que obtenga el foco sera aquel que este habilitado Enabled=True, que en su propiedad TabIndex sea la siguiente por ejemplo si el control actual tiene TabIndex = 6 pasaria al n o n+1... o si es el ultimo control pasaria el foco al control que tenga en la propiedad Tabindex el menor valor.

Ah... :P  Una cosa mas... La propiedad TabSop de los controles tiene que estar a true si quieres que tomen el foco....

Ahora si quieres controlar la pulsacion por cada control puedes usar de igual forma el mismo evento, pero ahora del control quedando asi...

Código: Text
  1.  
  2.  Private Sub ebCodCaja_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles ebCodCaja.KeyDown
  3.        If e.KeyCode = Keys.Enter Then
  4.  
  5.             'Insertar aqui el codigo necesario.
  6.  
  7.         End If
  8.     End Sub
  9.  
  10.  
  11.  


Algo de terioa.

Control.KeyDown (Evento)  [Visual Basic]

Se produce cuando se presiona una tecla mientras el control tiene el foco.

Datos del evento
El controlador de eventos recibe un argumento de tipo KeyEventArgs que contiene datos relacionados con este evento. Las siguientes propiedades de KeyEventArgs proporcionan información específica para el evento.

Propiedad Descripción
Alt---> Obtiene un valor que indica si se presionó la tecla ALT.
Control---> Obtiene un valor que indica si se presionó la tecla CTRL.
Handled---> Obtiene o establece un valor que indica si se controló el evento.
KeyCode---> Obtiene el código de teclado para un evento KeyDown o KeyUp.
KeyData---> Obtiene los datos de tecla para un evento KeyDown o KeyUp.
KeyValue---> Obtiene el valor de teclado para un evento KeyDown o KeyUp.
Modifiers---> Obtiene los indicadores modificadores para un evento KeyDown o KeyUp.---> Indica qué combinación de teclas modificadoras (CTRL, MAYÚS y ALT) se presionaron.
Shift---> Obtiene un valor que indica si se presionó la tecla MAYÚS.
---------------------------------------
Erick Aragon Zepeda
Dessarrollo de Aplicaciones .NET
http]
Blog de Articulos
Mi Blog
NoSolocodigo -->