begin process at 2012 05 24 23:47:01
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Python

 > 

Divers

 > 

Aide et documentation

 > 

évènements clavier


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

évènements clavier

mercredi 10 novembre 2010 à 06:23:33 | évènements clavier

Najalix

Bonjour,

Je fais un petit programme de reconnaissance par dynamique de frappe, et pour commencer il me faut récupérer les temps de pression de chaque touche ainsi que les temps de latence entre deux touches consécutives (différence entre le temps de début de pression de la première touche et le temps de début de pression de la deuxième).
J'utilise le langage python (version 2.6) avec le module Tkinter pour simuler une fenêtre de connexion (un truc basique : deux Label suivis de deux Entry, pour le login et le mot de passe). Pour le moment je récupère juste le temps de début de pression avec un bind sur les Entry, et j'aimerais savoir comment récupérer le temps du moment où l'utilisateur relâche la touche. Si quelqu'un a une idée je suis toute ouïe.

(petite note au cas où : je travaille avec ubuntu)

Merci,

Naj
mercredi 10 novembre 2010 à 17:35:00 | Re : évènements clavier

lespinx

Réponse acceptée !
Bonjour,
Voici une piste:
Code Python :
# -*- coding: ISO-8859-15 -*-
from Tkinter import *

flag = True

#L'appui prolongé sur une touche du clavier appelle plusieurs fois l'évenement
#La variable "flag" permet d'intercepter le 1er évenement
def appui(event):
    global flag, temps

    if flag:
        temps = event.time
        flag = False
        print "appui   time=",event.time,"touche=",event.keysym

def relache(event):
    global flag, temps
    print "relache time=",event.time
    print "duree =", event.time - temps
    flag = True


Ecran = Tk()
Ecran.bind("<KeyPress>", appui)
Ecran.bind("<KeyRelease>", relache)
Ecran.mainloop()


Important:
Pour faire le test il faut que la fenêtre/TkInter ait le focus sinon les évènements clavier ne sont pas interceptés.
mercredi 10 novembre 2010 à 20:52:04 | Re : évènements clavier

Najalix

Merci beaucoup, c'est exactement ce qu'il me fallait.

Juste une dernière question sur le sujet : le temps est donné avec quelle précision? (j'utilisais clock() mais c'était à la seconde près, j'avais des calculs de temps nuls, là j'ai des résultats satisfaisants , merci)


Cette discussion est classée dans : temps, touche, début, pression, évènements


Répondre à ce message

Sujets en rapport avec ce message

Plusieurs actions en meme temps [ par maxpeg0705 ] Bonjour,je voudrai essayer de faire executer plusieurs choses parallelement, en meme temps (par exemple avec un bot IRC afficher dans la fenetre ce qu Simuler un click de souris, l'appui sur une touche [ par vychnou ] Quelqun sait il s'il est possible de simuler le click souris à des coordonnées précises ou encore l'appui sur une touche du clavier en python? Sinon j Utiliser la touche "barre d'espacement" [ par Shakan972 ] Bonjour tout le monde j'aimerais savoir comment utiliser la barre d'espacement du clavier par le biais de la méthode bind.En fait j'aimerais savoir ce Détection d'une touche clavier (ou combinaison de 2 touches) [ par budhax ] Comment obtenir (dans la console de sortie):"X pressé" en pressant la touche X du clavier"Ctrl+Y pressé" en pressant la combinaison Ctrl+Y  du clavier Lire et écrire en même temps [ par GenShiJin ] Bonjour à tous !Je m'excuse à l'avance si ma question a déjà été traité mais je cherche à savoir comment ouvrir un fichier en lecture et en écriture e Python,drôle d'animal [ par Vianneyp ] Bonjour,Je programme en vb/vb.Net mais j'ai tout récemment (pas plus tard que ce matin enfaite :-) ) décider de me mettre a python avec un tutoriel vr Gestion des évènements: Clavier, Souris [ par GTomXIII ] Salut tout le monde!Je débute avec python depuis le week-end dernier. J'utilise souvent AutoHotKey pour mes programmes mais j'ai voulu me mettre à un Temps imparti [ par Lutcho74 ] Bonjour,J'ai mit au point un questionnaire qui prend des questions complètement aléatoire grâce u module random mais j'aimerais faire de façons a mett Aide pour acquisition d'une pression [ par sebfluo ] Bonjour a tous.Je suis entrain de réaliser un petit programme avec une interface graphique(réalisée avec QT designer et PyQT) permettant d'acquérir un probleme avec les listes ... ( anonymisation de log ) [ par psyssa ] bonjour tt le monde , je devellope un programme d'anonymisation de logs en python le but etant donné la recuperation ds un premier temps dadresse ip


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 6,115 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales