GetAsyncKeyState [Résolu]

Messages postés
109
Date d'inscription
lundi 27 juin 2005
Dernière intervention
17 juillet 2007
- - Dernière réponse : Gobillot
Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Dernière intervention
31 mars 2015
- 16 déc. 2005 à 20:52
salut a tous,

voila en fait ce n'est pas un probleme que je vais vous posez pcq j'ai la solution ! mais voila j'utilise l'api GetAsyncKeyState pour tester si la touche SHIFT est enfoncée !

Quand j'utilise ce code:

lbl1.caption =GetAsyncKeyState(16)

le label = -32767

mais quand j'utilise ce code:
If GetAsyncKeyState(16) -32767 Then Shift True Else schift = False

ca ne fonctionne pas, je suis obliger d'utiliser celui ci
If GetAsyncKeyState(16) -32768 Then Shift True Else schift = False

qui saurait me dire pourquoi ?
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Dernière intervention
31 mars 2015
3
Merci
If GetAsyncKeyState(16) < 0 Then Shift = True Else schift = False

Daniel

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 96 internautes nous ont dit merci ce mois-ci

Messages postés
14010
Date d'inscription
samedi 29 décembre 2001
Dernière intervention
28 août 2015
0
Merci
Salut
Utilise plutôt GetKeyState :
Cette fonction te renverra True si le Shift est enfoncé :


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

Function ToucheShiftEnfoncée() As Boolean
If GetKeyState(VK_SHIFT) = -127 Or _
GetKeyState(VK_SHIFT) = -128 Then
ToucheShiftEnfoncée = True
Else
ToucheShiftEnfoncée = False
End If
End Function

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
Messages postés
109
Date d'inscription
lundi 27 juin 2005
Dernière intervention
17 juillet 2007
0
Merci
non ca ne marche pas j'ai déjà essayer ! Merci quand meme !

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.