PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

  • Pour gérer toutes les touches du clavier avec la fonction ToucheEnfoncée :
  • Tester une combinaison de touches
  • Interrompre un traitement dans une boucle de parcours
  • Compte-rendu asynchrone
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Vérifie quelle est la touche enfoncée.
Exemple
EXTERNE "KeyConst.WL"
POUR I = 1 A 5000
Sablier(Vrai)
Multitâche(-1)
SI ToucheEnfoncée(VK_SPACE) = Vrai ALORS Info("Touche espace enfoncée")
SI ToucheEnfoncée(Asc("A")) = Vrai ALORS Info("Touche A enfoncée")
FIN
Sablier(Faux)
Syntaxe
<Résultat> = ToucheEnfoncée(<Constante> [, <Changement d'état>])
<Résultat> : Booléen
  • Vrai si la touche de contrôle est enfoncée ou a changé d'état depuis le dernier appel de la fonction ToucheEnfoncée,
  • Faux dans le cas contraire.
<Constante> : Constante de type entier
Identifie la touche de contrôle :
teAltTouche Alt.
teBoutonGBouton gauche de la souris.
teBoutonDBouton droit de la souris.
teControlTouche Ctrl.
teEchapTouche Echap.
teShiftTouche Maj.

Des constantes supplémentaires sont disponibles dans le fichier "KeyConst.wl". Ces constantes permettent d'identifier toutes les touches du clavier. Ce fichier est disponible dans le répertoire "\Personnel\Externe" de WINDEV ou WINDEV Mobile. Pour plus de détails sur son utilisation, consultez les remarques.
<Changement d'état> : Booléen optionnel
  • Vrai (valeur par défaut) pour obtenir un compte-rendu synchrone : touche enfoncée actuellement,
  • Faux pour obtenir un compte-rendu asynchrone : la touche a changé d'état depuis le dernier appel de la fonction ToucheEnfoncée.
Remarques

Pour gérer toutes les touches du clavier avec la fonction ToucheEnfoncée :

  1. Intégrez le fichier KeyConst.WL dans votre projet. Ce fichier associe à chaque touche du clavier une constante spécifique. Ce fichier est disponible dans le répertoire de WINDEV (sous-répertoire Personnel\Externe). Pour intégrer ce fichier dans vos applications, il est nécessaire d'utiliser le mot-clé EXTERNE de la façon suivante :
    EXTERNE "KEYCONST.wl"
  2. Utilisez les constantes dans la fonction ToucheEnfoncée :
    SI ToucheEnfoncée(VK_Space) ALORS ...
Remarques :
  • Pour gérer les touches de caractères, il suffit d'utiliser le code ASCII du caractère (obtenu avec la fonction Asc).
  • Toutes les constantes contenues dans le fichier KeyConst.WL commencent par les lettres VK_. A partir du moment où le fichier a été intégré avec le mot-clé EXTERNE, ces constantes sont proposées par la complétion automatique dans l'éditeur de code.

Tester une combinaison de touches

Pour tester une combinaison de touches, il suffit de tester deux touches enfoncées :
SI ToucheEnfoncée(teShift) ET ToucheEnfoncée(VK_TAB) ALORS
        Trace("OK")
FIN

Interrompre un traitement dans une boucle de parcours

Dans une boucle de parcours, pour interrompre le traitement en testant l'appui sur Echap, il faut utiliser la fonction Multitâche avant la fonction ToucheEnfoncée.
Exemple :
HLitPremier(Client, NumCli)
TANTQUE HEnDehors() = Faux
// Abandon par Echap ?
Multitâche(-1)
SI ToucheEnfoncée(teEchap) = Vrai ALORS SORTIR
// Traitement
HLitSuivant(Client, NumCli)
FIN
Etats et RequêtesWindows

Compte-rendu asynchrone

Pour éviter de récupérer une touche précédemment enfoncée (dans un autre traitement par exemple), il faut ré-initialiser l'état de la touche à tester avec la ligne de code suivante :
ToucheEnfoncée(<Touche>, Faux)
Composante : wd240std.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire