IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Free Pascal Discussion :

Utilisation de GetKeyState [Free Pascal]


Sujet :

Free Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 49
    Par défaut Utilisation de GetKeyState
    Bonjour à toutes et tous,

    Dans le but de stopper un programme par attente de la touche "Entrée", j'utilise ce bout de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Repeat
             x := 400 ;
             y := y + 10 ;
             EtatKey := Hexstr( (LclIntf.GetKeyState( VK_Return )and MaskKey ) , 8 );
             OutTextXY( x, y, 'KeyState ' +  EtatKey );
             Sleep ( 5000 ) ;
    Until LclIntf.GetKeyState( VK_Return ) <> 0;
    Le comportement est différent suivant le mode d' execution (le PC est sous Vista) :
    A/ Lancement du .exe sous Vista : Boucle infinie avec affichage de EtatKey toutes les 5 secondes.
    Aucune action des touches

    B/ Sous Lazarus via "Executer" : Affichage du 1er EtaKey.
    Aucune action des touches.

    Je suis un poil perdu.
    Merci d'avance, cordialement

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 49
    Par défaut
    Citation Envoyé par ducelier Voir le message
    Bonjour à toutes et tous,

    Dans le but de stopper un programme par attente de la touche "Entrée", j'utilise ce bout de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Repeat
             x := 400 ;
             y := y + 10 ;
             EtatKey := Hexstr( (LclIntf.GetKeyState( VK_Return )and MaskKey ) , 8 );
             OutTextXY( x, y, 'KeyState ' +  EtatKey );
             Sleep ( 5000 ) ;
    Until LclIntf.GetKeyState( VK_Return ) <> 0;
    Le comportement est différent suivant le mode d' execution (le PC est sous Vista) :
    A/ Lancement du .exe sous Vista : Boucle infinie avec affichage de EtatKey toutes les 5 secondes.
    Aucune action des touches

    B/ Sous Lazarus via "Executer" : Affichage du 1er EtaKey.
    Aucune action des touches.

    Je suis un poil perdu.
    Merci d'avance, cordialement
    Bonjour,
    Je me réponds à moi-même au cas où cela interesserait d' autres gentils membres :
    L' utilisation de GetAsyncKeyState résoud mon problème.

    Mais si il y a des commentaires, je suis tout ouïe.
    Cordialement,

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. utiliser les tag [MFC] [Win32] [.NET] [C++/CLI]
    Par hiko-seijuro dans le forum Visual C++
    Réponses: 8
    Dernier message: 08/06/2005, 15h57
  2. Réponses: 4
    Dernier message: 05/06/2002, 14h35
  3. utilisation du meta type ANY
    Par Anonymous dans le forum CORBA
    Réponses: 1
    Dernier message: 15/04/2002, 12h36
  4. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/04/2002, 16h01
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo