Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/03/2006, 11:00
Avatar de Skalitiko
Skalitiko
 
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 20 años, 2 meses
Puntos: 0
Solución

Ya encontre una solución, la voy a postear por si a alguíen más le interesa:

La solución esta en utilizar la siguiente delaración API:

Private Declare Function GetKeyState Lib "user32" Alias "GetKeyState" (ByVal nVirtKey As Long) As Integer

Con esto puedo saber una tecla x esta pulsada.

En un timer

Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Dim Ret as Long
If Cursor.Position.X >= Me.Left And Cursor.Position.X <= (Me.Left + Me.Width) And Cursor.Position.Y >= 0 And Cursor.Position.Y <= Me.Button1.Height Then
' Si el puntero del mouse se encuentra entre el espacio que ocupa el form estando visible, comprueba si se encuentra pulsada la tecla ALT
Ret = GetKeyState(18)
If Ret = -128 or Ret = -127 Then
'si GetKeyState retorna -128 o -127 quiere decir que la tecla alta esta pulsada el valor que resive GetKeyState es el valor ascii de la tecla
Me.Visible = True
End If

Else

If Me.Visible = True Then Me.Visible = False

End If
End Sub