~ Edito ~
12/03/2006 @ 13:39
Depuis la dernière mise à jour (qui remonte à... oulala plusieurs mois), un petit ménage de printemps s'impose. Ca tombe bien, c'est presque la période. Au menu, et progressivement sur les jours à venir, rafraîchissement de plusieurs fonctions et procédures, nouvelles APIs et nouveaux programmes.
~ Rechercher ~
~ Annuaire VB ~
~ Partenaires ~
|
Fonction GetKeyState
Declare Function GetKeyState Lib "user32" ( _ ByVal nVirtKey As Long) As Integer
Versions : . Windows 95/98 : Oui . Windows NT : A partir de 3.1 . Windows 2000/XP : OuiDescription : La fonction GetKeyState retourne le status de la touche virtuelle (virtual-key code) spécifiée. Autrement dit, cette fonction permet de savoir si une touche est enfoncée (toutes les touches du clavier et les boutons de la souris).
nVirtKey est la touche à tester (voir le tableau de constantes ci-dessous).
La fonction retourne 0 ou 1 lorsque la touche est inactive sinon -128 ou -127 lorsque la touche est enfoncée.
Constante | Valeur |
Définition |
VK_F9 | 78 |
Touche f9 |
VK_F8 | 77 |
Touche f8 |
VK_F6 | 75 |
Touche f6 |
VK_F7 | 76 |
Touche f7 |
VK_F5 | 74 |
Touche f5 |
VK_F4 | 73 |
Touche f4 |
VK_F3 | 72 |
Touche f3 |
VK_F2 | 71 |
Touche f2 |
VK_F1 | 70 |
Touche f1 |
VK_DIVIDE | 6F |
Touche "division". |
VK_DECIMAL | 6E |
Touche séparateur décimal. |
VK_SUBTRACT | 6D |
Touche "soustraction". |
VK_SEPARATOR | 6C |
Touche de séparation. |
VK_ADD | 6B |
Touche "addition". |
VK_MULTIPLY | 6A |
Touche "multiplication". |
VK_NUMPAD9 | 69 |
Touche 9 (clavier numérique). |
VK_NUMPAD8 | 68 |
Touche 8 (clavier numérique). |
VK_NUMPAD7 | 67 |
Touche 7 (clavier numérique). |
VK_NUMPAD6 | 66 |
Touche 6 (clavier numérique). |
VK_NUMPAD5 | 65 |
Touche 5 (clavier numérique). |
VK_NUMPAD4 | 64 |
Touche 4 (clavier numérique). |
VK_NUMPAD3 | 63 |
Touche 3 (clavier numérique). |
VK_NUMPAD2 | 62 |
Touche 2 (clavier numérique). |
VK_NUMPAD1 | 61 |
Touche 1 (clavier numérique). |
VK_NUMPAD0 | 60 |
Touche 0 (clavier numérique). |
VK_APPS | 5D |
Touche Windows applications (Microsoft Natural Keyboard). |
VK_RWIN | 5C |
Touche Windows droite (Microsoft Natural Keyboard). |
VK_LWIN | 5B |
Touche Windows gauche (Microsoft Natural Keyboard). |
VK_Z | 5A |
Touche z |
VK_Y | 59 |
Touche y |
VK_X | 58 |
Touche x |
VK_W | 57 |
Touche w |
VK_V | 56 |
Touche v |
VK_U | 55 |
Touche u |
VK_T | 54 |
Touche t |
VK_S | 53 |
Touche s |
VK_R | 52 |
Touche r |
VK_Q | 51 |
Touche q |
VK_P | 50 |
Touche p |
VK_O | 4F |
Touche o |
VK_N | 4E |
Touche n |
VK_M | 4D |
Touche m |
VK_L | 4C |
Touche l |
VK_K | 4B |
Touche k |
VK_J | 4A |
Touche j |
VK_I | 49 |
Touche i |
VK_H | 48 |
Touche h |
VK_G | 47 |
Touche g |
VK_F | 46 |
Touche f |
VK_E | 45 |
Touche e |
VK_D | 44 |
Touche d |
VK_C | 43 |
Touche c |
VK_B | 42 |
Touche b |
VK_A | 41 |
Touche a |
VK_9 | 39 |
Touche 9 |
VK_8 | 38 |
Touche 8 |
VK_7 | 37 |
Touche 7 |
VK_5 | 35 |
Touche 5 |
VK_6 | 36 |
Touche 6 |
VK_3 | 33 |
Touche 3 |
VK_4 | 34 |
Touche 4 |
VK_1 | 31 |
Touche 1 |
VK_2 | 32 |
Touche 2 |
VK_0 | 30 |
Touche 0 |
VK_HELP | 2F |
Touche "aide". |
VK_DELETE | 2E |
Touche "Suppression". |
VK_INSERT | 2D |
Touche insertion. |
VK_SNAPSHOT | 2C |
Touche impression écran. |
VK_EXECUTE | 2B |
Touche "exécution". |
VK_SELECT | 29 |
Touche "selection". |
VK_DOWN | 28 |
Flèche curseur bas. |
VK_RIGHT | 27 |
Flèche curseur droit. |
VK_UP | 26 |
Flèche curseur haut. |
VK_LEFT | 25 |
Flèche curseur gauche. |
VK_HOME | 24 |
Touche "début". |
VK_END | 23 |
Touche "fin". |
VK_NEXT | 22 |
Touche "page bas". |
VK_PRIOR | 21 |
Touche "page haut". |
VK_SPACE | 20 |
Touche Espace. |
VK_ESCAPE | 1B |
Touche Echap. |
VK_CAPITAL | 14 |
Touche verrouillage majuscule. |
VK_PAUSE | 13 |
Touche "Pause". |
VK_MENU | 12 |
Touche "Alt". |
VK_CONTROL | 11 |
Touche "Control". |
VK_SHIFT | 10 |
Touche "Shift". |
VK_RETURN | 0D |
Touche "Entrée". |
VK_CLEAR | 0C |
Touche d'effacement. |
VK_TAB | 09 |
Touche tabulation. |
VK_BACK | 08 |
Touche retour arrière. |
VK_MBUTTON | 04 |
Bouton du milieu de la souris (le 3ème boutton). |
VK_CANCEL | 03 |
Control-break. |
VK_RBUTTON | 02 |
Bouton droit de la souris. |
VK_LBUTTON | 01 |
Bouton gauche de la souris. |
VK_F10 | 79 |
Touche f10 |
VK_F11 | 7A |
Touche f11 |
VK_F12 | 7B |
Touche f12 |
VK_F13 | 7C |
Touche f13 |
VK_F14 | 7D |
Touche f14 |
VK_F15 | 7E |
Touche f15 |
VK_F16 | 7F |
Touche f16 |
VK_F17 | 80H |
Touche f17 |
VK_F18 | 81H |
Touche f18 |
VK_F19 | 82H |
Touche f19 |
VK_F20 | 83H |
Touche f20 |
VK_F21 | 84H |
Touche f21 |
VK_F22 | 85H |
Touche f22 |
VK_F23 | 86H |
Touche f23 |
VK_F24 | 87H |
Touche f24 |
VK_NUMLOCK | 90 |
Touche verrouillage numérique. |
VK_SCROLL | 91 |
Touche verrouillage défilement. |
VK_ATTN | F6 |
Touche "Attn". |
VK_CRSEL | F7 |
Touche "CrSel". |
VK_EXSEL | F8 |
Touche "ExSel". |
VK_PLAY | FA |
Touche "Play". |
VK_ZOOM | FB |
Touche "Zoom". |
VK_NONAME | FC |
Reservé. |
VK_PA1 | FD |
Touche PA1. |
Exemple d'utilisation :
' Exemple de Philippe Plançon : plancon@onetelnet.fr
' Coordonnées d'un point de l'écran
Private Type POINTAPI
x As Long
y As Long
End Type
' Retourne la position de la souris sur l'écran
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
' Teste si une touche est enfoncée
Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
' Déclaration des touches
Const VK_LBUTTON = 1 ' Left mouse button
Private Sub Timer1_Timer()
' Déplacez-vous où vous voulez et appuyez sur le bouton gauche
' de la souris et hop on sait tout quand on veut
'---Déclaration des variables---
Dim Coord As POINTAPI
'---Affiche les coordonnées du curseur de la souris---
If GetKeyState(VK_LBUTTON) >= 0 Then
Me.Caption = "Bouton gauche de la souris relaché"
Else
GetCursorPos Coord
Me.Caption = "Bouton gauche de la souris enfoncé : x = " & _
Coord.x & " , y = " & Coord.y
End If
End Sub
Retour à la liste des API |