Hit-Parade .VB Research Center . Compteur
Accueil ~  Code ~  Programmes ~  Api ~  Forum ~  Cours ~  Livres ~  Quiz ~  Annuaire
~ 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 ~
 Rechercher un site :
  

~ 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 : Oui

Description :
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.

ConstanteValeur Définition
VK_F978 Touche f9
VK_F877 Touche f8
VK_F675 Touche f6
VK_F776 Touche f7
VK_F574 Touche f5
VK_F473 Touche f4
VK_F372 Touche f3
VK_F271 Touche f2
VK_F170 Touche f1
VK_DIVIDE6F Touche "division".
VK_DECIMAL6E Touche séparateur décimal.
VK_SUBTRACT6D Touche "soustraction".
VK_SEPARATOR6C Touche de séparation.
VK_ADD6B Touche "addition".
VK_MULTIPLY6A Touche "multiplication".
VK_NUMPAD969 Touche 9 (clavier numérique).
VK_NUMPAD868 Touche 8 (clavier numérique).
VK_NUMPAD767 Touche 7 (clavier numérique).
VK_NUMPAD666 Touche 6 (clavier numérique).
VK_NUMPAD565 Touche 5 (clavier numérique).
VK_NUMPAD464 Touche 4 (clavier numérique).
VK_NUMPAD363 Touche 3 (clavier numérique).
VK_NUMPAD262 Touche 2 (clavier numérique).
VK_NUMPAD161 Touche 1 (clavier numérique).
VK_NUMPAD060 Touche 0 (clavier numérique).
VK_APPS5D Touche Windows applications (Microsoft Natural Keyboard).
VK_RWIN5C Touche Windows droite (Microsoft Natural Keyboard).
VK_LWIN5B Touche Windows gauche (Microsoft Natural Keyboard).
VK_Z5A Touche z
VK_Y59 Touche y
VK_X58 Touche x
VK_W57 Touche w
VK_V56 Touche v
VK_U55 Touche u
VK_T54 Touche t
VK_S53 Touche s
VK_R52 Touche r
VK_Q51 Touche q
VK_P50 Touche p
VK_O4F Touche o
VK_N4E Touche n
VK_M4D Touche m
VK_L4C Touche l
VK_K4B Touche k
VK_J4A Touche j
VK_I49 Touche i
VK_H48 Touche h
VK_G47 Touche g
VK_F46 Touche f
VK_E45 Touche e
VK_D44 Touche d
VK_C43 Touche c
VK_B42 Touche b
VK_A41 Touche a
VK_939 Touche 9
VK_838 Touche 8
VK_737 Touche 7
VK_535 Touche 5
VK_636 Touche 6
VK_333 Touche 3
VK_434 Touche 4
VK_131 Touche 1
VK_232 Touche 2
VK_030 Touche 0
VK_HELP2F Touche "aide".
VK_DELETE2E Touche "Suppression".
VK_INSERT2D Touche insertion.
VK_SNAPSHOT2C Touche impression écran.
VK_EXECUTE2B Touche "exécution".
VK_SELECT29 Touche "selection".
VK_DOWN28 Flèche curseur bas.
VK_RIGHT27 Flèche curseur droit.
VK_UP26 Flèche curseur haut.
VK_LEFT25 Flèche curseur gauche.
VK_HOME24 Touche "début".
VK_END23 Touche "fin".
VK_NEXT22 Touche "page bas".
VK_PRIOR21 Touche "page haut".
VK_SPACE20 Touche Espace.
VK_ESCAPE1B Touche Echap.
VK_CAPITAL14 Touche verrouillage majuscule.
VK_PAUSE13 Touche "Pause".
VK_MENU12 Touche "Alt".
VK_CONTROL11 Touche "Control".
VK_SHIFT10 Touche "Shift".
VK_RETURN0D Touche "Entrée".
VK_CLEAR0C Touche d'effacement.
VK_TAB09 Touche tabulation.
VK_BACK08 Touche retour arrière.
VK_MBUTTON04 Bouton du milieu de la souris (le 3ème boutton).
VK_CANCEL03 Control-break.
VK_RBUTTON02 Bouton droit de la souris.
VK_LBUTTON01 Bouton gauche de la souris.
VK_F1079 Touche f10
VK_F117A Touche f11
VK_F127B Touche f12
VK_F137C Touche f13
VK_F147D Touche f14
VK_F157E Touche f15
VK_F167F Touche f16
VK_F1780H Touche f17
VK_F1881H Touche f18
VK_F1982H Touche f19
VK_F2083H Touche f20
VK_F2184H Touche f21
VK_F2285H Touche f22
VK_F2386H Touche f23
VK_F2487H Touche f24
VK_NUMLOCK90 Touche verrouillage numérique.
VK_SCROLL91 Touche verrouillage défilement.
VK_ATTNF6 Touche "Attn".
VK_CRSELF7 Touche "CrSel".
VK_EXSELF8 Touche "ExSel".
VK_PLAYFA Touche "Play".
VK_ZOOMFB Touche "Zoom".
VK_NONAMEFC Reservé.
VK_PA1FD 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

Visual Basic Research Center - (c) 2000/2002 -  Webmaster : docvb (chez) free (point) fr