• Lunes 13 de Mayo de 2024, 17:32

Autor Tema:  Problemas con Evento Keypress  (Leído 1292 veces)

dubiweb

  • Nuevo Miembro
  • *
  • Mensajes: 18
    • Ver Perfil
Problemas con Evento Keypress
« en: Viernes 25 de Julio de 2008, 20:34 »
0
Hola amigos que tal mi nombre es Manuel y tengo un problema con el evento keypress, keydown, keyup Se que se puede utilizar con un texbox como cualquier otro objeto como lo es un botón pero en problema que tengo es el foco del objeto estos tres eventos funciona siempre y cuando el foco este en el objeto afectado si o no, no se si me equivoco si lo hago me corrigen por favor.

El echo esta que tengo una pantalla la cual tiene tres botones y quiero que si el usuario presiona la letra “S” se active el botón 1, si presiona la letra “E” se active el botón 2 y si presiona la letra “R” se active el botón 3. Bien con el keydown se hace pero el foco tiene que estar en ese botón y quiero que si estas o no esta el foco en ese botón siempre realice su acción al presionar la tecla indicada el usuario. Y sin que este el foro es ese botón es decir sin importar quien tiene el foco, cuando el usuario presione la tela indicada se corra la acción establecida en el código.

De antemano les agradezco toda la ayuda que me puedan brindar.

SysEdw

  • Miembro activo
  • **
  • Mensajes: 28
  • Nacionalidad: pe
    • Ver Perfil
Re: Problemas con Evento Keypress
« Respuesta #1 en: Viernes 25 de Julio de 2008, 22:34 »
0
Hola Manuel, tienes razon pero tambien se puede ejecutar cuando tenga el foco en el form o en los cuatro objetos (form, buton1, buton2, buton3).
Prueba con este codigo

Código:
 
Código: Text
  1.  
  2. Private Sub Form1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) _
  3.     Handles Me.KeyPress, Button1.KeyPress, Button2.KeyPress, Button3.KeyPress
  4.         If e.KeyChar = LCase(Microsoft.VisualBasic.ChrW(Keys.S)) Then
  5.             Me.Button1.Enabled = True
  6.         ElseIf e.KeyChar = LCase(Microsoft.VisualBasic.ChrW(Keys.E)) Then
  7.             Me.Button2.Enabled = True
  8.         ElseIf e.KeyChar = LCase(Microsoft.VisualBasic.ChrW(Keys.R)) Then
  9.             Me.Button3.Enabled = True
  10.         End If
  11.     End Sub
  12.  
  13.  
______________________________________________________________________________________
                        [size=100]   Si se puede imaginar... se puede programar.
Me encanta depender de la tegnología y vengarme de ella para dominarla como los locos.[/size]