Graphiques
 
- Dégradé
- Animations BitBlt
- Animations Pic
- Contrôle Animation
- Défilement d'image
 
Interface
 
- Barre d'outils
- Barre de progression
- Clignotement
- Interface MDI
- Barre d'état
 
Texte & système
 
- Texte sur image
- Taille variable
- Informations système
 
Fichiers
 
- Grand fichier
- Choix de police
- Dictionnaire Word
- Listes
- Fichiers binaires
 
Souris et touches
 
- Curseur animé
- Touches
 

Utilisation des touches
Même si la souris est un périphérique d'entrée de prédilection, il arrive souvent qu'on désire utiliser des touches pour effectuer certaines opérations. C'est même parfois plus rapide. Cette fiche vous montre comment les utiliser.
  1. Commencez par télécharger les fichiers suivants dans votre répertoire: Ex_18xx.vbp, E18_F1xx.frx et E18_F1xx.frm.
  2. Ouvrez le projet avec VisualBasic.  Voici à quoi ressemble la feuille de départ.

  1. Il faut d'abord déclarer dans la section EXPLICIT trois variables booléennes qui serviront à enregistrer l'état des touches CTRL, ALT et MAJ

'Déclaration des variables booléennes
Private MajEtat As Boolean
Private CtrlEtat As Boolean
Private AltEtat As Boolean

  1. On ajoute ensuite la procédure principale, celle qui réagira en fonction de l'enfoncement des touches vérifiées. Le code est intégré dans l'événement KEYDOWN de la feuille.

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
  
'Initialisation des variables en fonction de l'enfoncement des touches
   MajEtat = (Shift And vbShiftMask) > 0
   CtrlEtat = (Shift And vbCtrlMask) > 0
   AltEtat = (Shift And vbAltMask) > 0

  
'Réaction attendue en fonction de la valeur des variables
   If CtrlEtat = "Vrai" Then  
'Touche CTRL
      If IM_Seigneur.Visible = False Then 
' Si l'image est visible, on la cache...
         IM_Seigneur.Visible = True
      Else   
'sinon...
        IM_Seigneur.Visible = False  
'... on la montre
      End If
   End If

   If MajEtat = "Vrai" Then  
'Touche MAJ
      If ET_Legende.Visible = False Then  
' Si la légende est visible, on la cache...
         ET_Legende.Visible = True
      Else  
'sinon...
         ET_Legende.Visible = False   
'... on la montre
      End If
   End If

   If AltEtat = "Vrai" Then  
'Touche ALT
      If IM_Seigneur.Visible = False Then  
' Si l'image est visible, on la cache...
         IM_Seigneur.Visible = True
      Else   
'sinon...
         IM_Seigneur.Visible = False   
'... on la montre
      End If
      If ET_Legende.Visible = False Then    
' Si la légende est visible, on la cache...
         ET_Legende.Visible = True
      Else   
'sinon...
         ET_Legende.Visible = False 
'... on la montre
      End If
   End If
End Sub

  1. Enregistrez votre programme en apportant les corrections nécessaires aux noms. Vous pouvez déjà le tester.

  2. Ajoutez cette dernière procédure dans l'événement KEYUP de la feuille. L'objectif est de ramener toutes les variables à faux.

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
   'Réinitialisation des variables lors du relàchement de la touche
   MajEtat = (Shift And vbShiftMask)
   CtrlEtat = (Shift And vbCtrlMask)
   AltEtat = (Shift And vbAltMask)
End Sub

  1. Enregistrez à nouveau votre programme. Vous pouvez aussi travailler avec les touches de fonction. Ajoutez la section de code ci-dessous à la procédure FORM_KEYDOWN, juste avant le END SUB.

Select Case KeyCode  'Réaction en fonction de la touche enfoncée
Case vbKeyF1
   If ET_F1.BorderStyle = 0 Then 
'Si la bordure de l'étiquette est absente...
      ET_F1.BorderStyle = 1 
'la bordure est activée
   Else  
'sinon
     ET_F1.BorderStyle = 0  
'elle est désactivée
   End If
Case vbKeyF2
   If ET_F2.BorderStyle = 0 Then
      ET_F2.BorderStyle = 1
   Else
     ET_F2.BorderStyle = 0
   End If
End Select

  1. Enregistrez à nouveau votre programme et testez-le.

Application:

  • Complétez le programme précédent de façon à ce qu'il réagisse aussi lorsqu'on enfonce les touches F3 à F6 ou les touches MAJ, CTRL et ALT (les trois dernières provoqueront à la fois une réaction sur les images et sur les étiquettes.  Sauvegardez le programme modifié sous le nom  Ex_18bxx.vbp.

 

Création d'aide
 
- À propos
- Astuce du jour
 
Cryptage
 
- Mot de passe
- Cryptage de fichier
 
Base de données
 
- Bibliothèque
 
Winsock
 
- Serveur de chat
- Client de chat 1
- Client de chat 2
 
Jeu d'arcade
 
- Interface
- Programmation 1
- Programmation 2
- Programmation 3
- Programmation 4
 
Navigateur WEB
 
- Interface 1
- Interface 2
- Interface 3
- Interface 4
- Programmation 1
- Programmation 2
- Programmation 3
- Programmation 4
© Copyright 2002 - Design : Webmasters-fr.net