Foros del Web » Programación para mayores de 30 ;) » .NET »

Evento en Form

Estas en el tema de Evento en Form en el foro de .NET en Foros del Web. Hola gente. Bueno a hora estoy entrandole a la tecnologia .net y bueno queria empezar haciendo un jueguito, pero me veo complicado con los eventos. ...
  #1 (permalink)  
Antiguo 17/06/2009, 18:44
 
Fecha de Ingreso: junio-2008
Mensajes: 21
Antigüedad: 15 años, 10 meses
Puntos: 0
Sonrisa Evento en Form

Hola gente.
Bueno a hora estoy entrandole a la tecnologia .net y bueno queria empezar haciendo un jueguito, pero me veo complicado con los eventos.

el juego es un algo simple, como para familiarizarme con .net.


Código:
   Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
        If e.KeyCode = Keys.Down Then
            MsgBox("se supone q debe mostrar este mensaje")
        End If
    End Sub
pero creo que no funciona en el evento from1_keydown por k presiono el teclado down y no pasa nada no dispara el evento..

espero su ayuda por favor!!


Ah y una consultita mas.. :P cual es el evento para q por ejemplo un picture este en constante movimiento no se si me dejo entender!! que se este moviendo todo el tiempo sin parar como lo lograria?? :(

Última edición por camef; 17/06/2009 a las 18:49 Razón: Me olvidaba..
  #2 (permalink)  
Antiguo 17/06/2009, 19:47
Avatar de Keyenight  
Fecha de Ingreso: febrero-2009
Ubicación: En la PC usando VB
Mensajes: 42
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Evento en Form

El problema es que ese evento se da solo cuando el form tiene el foco y el foco lo tienes solo cuando no tiene controles dentro de el que le quiten el foco así que por decirlo asi es un poco "inutil" mejor usa la API GetAscynKeyState es mucho mejor sino sabes usarla aqui te explico un poco:
Con un Timer de un interval de mas o menos 250 milisegundos colocas:
Código vb:
Ver original
  1. If GetAscyKeyState(Asc("a")) = -32767 Then
  2. ''Lo que pasa si se presiona la letra "a"
  3. End If
El Asc transforma una letra a su cod ASCII que se lo pasamos como paremetro al API para revisar si la tecla esta siendo pulsada si es asi devuelve -32767;
Lo unico que faltaria agregarle es otro If que diga si nuestra aplicación tiene el foco entonces, ya que GetAscyKeyState toma todas las pulsaciones del teclado asi nuestra aplicacion no tenga foco ...Eso te lo dejo a ti...
Espero que te haya servido.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:57.