Usuario
Pulsación de teclas

Pregunta
-
Hola:
He probado este código para detectar cunado se pulsa una tecla aunque se esté en otra ventana:
Private Const VK_F11 As UInteger =&H7A Private Const WM_HOTKEY As Integer = &H312 Protected Overrides Sub WndProc(ByRef m As Message) If m.Msg = WM_HOTKEY Then If Me.WindowState = FormWindowState.Minimized Then Me.WindowState = FormWindowState.Normal Exit Sub End If If functions.ProcessHasFocus = False Then Me.Activate() Exit Sub End If If Me.WindowState = FormWindowState.Normal Then Me.WindowState = FormWindowState.Minimized Exit Sub End If End If MyBase.WndProc(m) End Sub Private Sub Main_Load(sender As Object, e As EventArgs) Handles Me.Load If Not RegisterHotKey(Me.Handle, 0, 0, VK_F11) Then MessageBox.Show("Tecla ya asignada") End If End sub
El código funciona correctamente , pero cuando estoy en un juego a pantalla completa, no funciona.
¿Alguna explicaión y/o solución?
Gracias
- Cambiado Enrique M. Montejo viernes, 12 de junio de 2015 9:43 Pregunta relacionada con aplicación de Windows Forms.
Todas las respuestas
-
Hola alecamar,
Gracias por consultar en los foros. Te comparto el link de MSDN en donde se habla de esta función, RegisterHotKey function, te recomiendo para verificar el buen funcionamiento del ejemplo, primero lo corras sin modificación alguna.
Así como WM_HOTKEY message, que te servirá para mostrar un mensaje al usuario respect a nuestra function antes mencionada.
Espero te sean de utildad.
Saludos,
Karen.
_________________
Por favor, recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema.
Es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft. Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.
-
-
Hola:
Hace algunos días pregunté cómo detectar una pulsación de teclas cuando el formulario estaba minimizado. Conseguí hacer que funcione, pero me he encontrado con un problema:
Cuando estoy en un juego a pantalla completa, no se detecta ésta pulsación. ¿
Alguna alternativa para que sean detectados?
Gracias
PD: Uso RegisterHotKey y WndProc
- Combinado Enrique M. Montejo domingo, 14 de junio de 2015 4:21 Pregunta duplicada