Touche

drpsico Messages postés 208 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 15 août 2005 - 14 juin 2005 à 18:06
drpsico Messages postés 208 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 15 août 2005 - 17 juin 2005 à 19:21
/auteurdetail.aspx?ID=274287 bonjour je voudrais savoir commen je pe faire prendre en conte une combinéson de touche
example:
je fai ctrl + alt + a ben sa quitte mon prog
merci

psicofox6@hotmail.com==

19 réponses

cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
14 juin 2005 à 20:00
Salut,

Dans ta form principale :

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

If KeyCode = vbKeyA Then
If (Shift And 4) > 0 And (Shift And 2) > 0 Then
End 'ou la procédure de download de ton prog
End If
End If


End Sub

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
drpsico Messages postés 208 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 15 août 2005
15 juin 2005 à 17:10
salut moi je ve que sa le face meme quand mon login'est pas visible
la g fai

Private Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal vKey As Long) As Integer
Const VK_F2 = &H71
_______________________________________________________
Private Sub Timer1_Timer()
If (GetAsyncKeyState(VK_F2) And &H1) = &H1 Then End
End Sub

la c'est quand j'apui sur f2
mes moi je ve par example quand j'apui sur ctrl + alt + a
merci

psicofox6@hotmail.com==
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
16 juin 2005 à 00:46
Option Explicit



Private Type KeyboardBytes

kbByte(0 To 255) As Byte

End Type



Private Declare Function GetKeyboardState Lib "user32" (kbArray As KeyboardBytes) As Long



Private Sub Timer1_Timer()

Dim kbArray As KeyboardBytes

GetKeyboardState kbArray

If kbArray.kbByte(17) > 127 And _

kbArray.kbByte(18) > 127 And _

kbArray.kbByte(65) > 127 Then

Beep

End If

End Sub


Daniel
0
drpsico Messages postés 208 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 15 août 2005
16 juin 2005 à 17:04
bonjour tu pe me dire a coi se rapporte
If kbArray.kbByte(17) > 127 And _
kbArray.kbByte(18) > 127 And _
kbArray.kbByte(65) > 127 Then
merci

psicofox6@hotmail.com==
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
16 juin 2005 à 20:29
17 c'est le numéro touche pour Ctrl

18 c'est pour Alt

65 c'est pour "a"



tu peux avoir aussi les touches séparées 162 - Ctrl gauche 163 - Ctrl droit
pour savoir à quoi ça correspond, tu balayes le Tableau de 0 à 255, et tu sors le numéro

si supérieur à ... 127 (?)

en appuyant sur une touche, tu verras à quel numéro ça correspond et la
valeur, égale à 128 ou 129 je sais pas pourquoi (appuyée ou
relâchée) ?

j'ai aussi des "0" et des "1" sans avoir appuyé


Daniel
0
drpsico Messages postés 208 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 15 août 2005
17 juin 2005 à 10:46
slt merci sa marche mes tu pe me dire comme je peut faire pour savoir quel numero = quel touche parce que jarrive pas
merci

[mailto:==psicofox6@hotmail.com ==psicofox6@hotmail.com]==
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
17 juin 2005 à 11:41
Il y a aussi la solution toute bête avec l'API GetAsyncKeyState :

Dans un timer (interval 1) :
If GetAsyncKeyState(vbKeyA) _
And GetAsyncKeyState(vbKeyControl) _
And GetAsyncKeyState(vbKeyMenu) Then
End
End If

Pour connaître le numéro des touches, soit la MSDN soit :

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
MsgBox KeyCode
End Sub

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
drpsico Messages postés 208 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 15 août 2005
17 juin 2005 à 11:48
merci canislupus

psicofox6@hotmail.com==
0
drpsico Messages postés 208 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 15 août 2005
17 juin 2005 à 11:49
a toi aussi go

psicofox6@hotmail.com==
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
17 juin 2005 à 11:56
un ListBox et un Timer

je confirme les valeurs sont bien 128 et parfois 129

avec plusieurs numéros possibles par touche: exemple Alt Gr





Option Explicit



Private Type KeyboardBytes

kbByte(0 To 255) As Byte

End Type



Private Declare Function GetKeyboardState Lib "user32" (kbArray As KeyboardBytes) As Long



Private Sub Form_Load()

Timer1.Interval = 100

Timer1.Enabled = True

End Sub



Private Sub Timer1_Timer()

Dim i As Integer

Dim kbArray As KeyboardBytes



GetKeyboardState kbArray

List1.Clear

For i = 0 To 255

With kbArray

If .kbByte(i) > 1 Then


List1.AddItem Format$(i, "000") & " - " & .kbByte(i)

End If

End With

Next



End Sub


Daniel
0
drpsico Messages postés 208 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 15 août 2005
17 juin 2005 à 12:11
psicofox6@hotmail.com==
0
drpsico Messages postés 208 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 15 août 2005
17 juin 2005 à 12:28
a sa a pas marcher je voudrais savoir comment je pe faire pour que sa quitte par exemple en fonction du mot qui et ecrit dans un textbox alors g un textbox ou l'utilisateur tape un mot "fin" par exemple et apres il valide pu quand il tapê se mot le logiciel se ferme.
je c pas si c claire??
merci de m'aidé encore une foi

psicofox6@hotmail.com==
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
17 juin 2005 à 12:51
dans l'évênement Change du TextBox:

If Lcase$(Text1.Text) = "fin" Then Unload Me


ou si tu veux qu'il valide par la touche Enter, dans l'évênement keyPress:

If KeyAscii = 13 Then

If Lcase$(Text1.Text) = "fin" Then Unload Me

End If


Daniel
0
drpsico Messages postés 208 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 15 août 2005
17 juin 2005 à 13:06
non c'est pas sa lol je c pas commen espliqué je ve qu'il enregistre un mot fin par exemple grace au textbox pui apres il valide le programme il se cache par exemple et il scrute tout se qui et taper au clavier et si le mot fin et trouver alors le prog fai un truc se quitte ou aparé
merci

psicofox6@hotmail.com==
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
17 juin 2005 à 14:09
pourquoi un TextBox

un Bouton pour le lancer suffit non ?

le programme se cache (Me.Hide) met en route le Timer, scrute le clavier (espionnage ?)

détecte une combinaison de touche spéciale, à définir, parce que le mot
"fin" ça pas être facile à détecter, il peut faire parti d'un mot,
d'une phrase ...

si la combinaison de touche est détectée, le programme réapparaît (Me.Show) ou se décharge (Unload Me)

Daniel
0
drpsico Messages postés 208 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 15 août 2005
17 juin 2005 à 16:50
le texbox c pour definir un mot qui quitera le logi
mes je fai commen pour savoir si il été taper se mo pck moi g fai
If InStr(Text1.Text, "fin") = 1 Then End
enfete jenregistre tout dans un textbox et je verifi si le mot fin y é mes sa marche pas si il i a dotre truc d'ecrit si je tape ke fin sa marche mes si je tape gftggghgdgfin ben il le trouve pas esque tu c comment je pe faire pour le trouver meme si il et melanger avec d'otre lettre
merci
psicofox6@hotmail.com==
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
17 juin 2005 à 17:04
Essaie :
If InStr(Text1.Text, "fin") > 0 Then End

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
drpsico Messages postés 208 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 15 août 2005
17 juin 2005 à 18:47
super canislupus sa marche merci

psicofox6@hotmail.com==
0
drpsico Messages postés 208 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 15 août 2005
17 juin 2005 à 19:21
un dernier truc commen on fai pour effacer une lettre en arriere

VbBack,
Effacement arrière
mes sa marche pas se me mes une barre

psicofox6@hotmail.com==
0
Rejoignez-nous