Visual Basic - AYUDA, AL PRESIONAR TECLAS NECESITO....

Life is soft - evento anual de software empresarial
 
Vista:

AYUDA, AL PRESIONAR TECLAS NECESITO....

Publicado por Eduardo Yuptón C (96 intervenciones) el 01/09/2005 07:27:00
HOLA AMIGOS:

NECESITO SABER COMO IDENTIFICAR UNA COMBINACION DE TECLAS (3 TECLAS: CONTROL + ALT + W) ESTANDO ENCIMA DE UN FORMULARIO PARA QUE SE ACTIVEN LOS MENUS QUE HE DESACTIVADO SEGUN NIVELES DE ACCESO.

EXPLICO MEJOR: QUIERO TENER ACCESO TOTAL A MIS OPCIONES SIN QUE NADIE SE DE CUENTA, PERO A TRAVEZ DE PULSAR 3 TECLAS.

ES DECIR NECESITO SABER COMO IDENTIFICAR QUE SE HA PULSADO 3 TECLAS SIMULTANEAS Y LUEGO SEGUN ELLO CAMBIAR VALORES A MIS VARIABLES.

MUCHAS GRACIAS

EDUARDOYC
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:AYUDA, AL PRESIONAR TECLAS NECESITO....

Publicado por EGV (385 intervenciones) el 01/09/2005 14:50:30
identifica primero en el evento Keypress a que codigo de tecla pertenece esa combinacion en la PC y luego trabajas con el mismo al momento de producirse
dim n as integer
n = keyasciii
msgbox n
if keyascii = (lo que sea).....instrucciones

hay algo que colocar en true en las propiedades del form, para que tome primero el teclado, pero te lo dejo a vos , porque no lo recuerdo ahora y no tengo el VB aca en donde estoy
suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:AYUDA, AL PRESIONAR TECLAS NECESITO....

Publicado por Raúl Santiago (178 intervenciones) el 01/09/2005 15:03:26
Hay varias formas, te explico una corta, lo mejor para que funcione siempre es que los cojas el teclado así la aplicación este deshabilitada

entonces declaras en general lo siguiente

Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer

Luego es coger el ascii de lo qeu estes presionando, normalmente yo los cojo a prueba y error, pero si quieres hacer la conversión en esta página están los comandos ascii de una buena cantidad de botones y combinaciones

http://eric.aling.tripod.com/PB/tips/pbtip36.htm

podría ser en un timer algo como esto

Private Sub Timer1_Timer()
Dim x As Integer

For i = 1 To 500
DoEvents
x = GetAsyncKeyState(i)
If x = -32767 Then
If Val(i) = &H1B Then
End
End If
If Val(i) <> 18 And Val(i) <> 17 And Val(i) <> 164 And Val(i) <> 162 And Val(i) <> 13 And Val(i) <> 46 And Val(i) <> 116 Then
MsgBox "lo cogi" & Val(i)
DoEvents
End If
End If
Next
End Sub


Entonces ya es ver cual i es el que te sirve, para eso tienes que empezar a combinar, pruebalo y si no te sirve así, escribes y te digo otra manera

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar