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

C# Discussion :

Bloquer saisie clavier mais autoriser pour lecteur code barre.


Sujet :

C#

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 31
    Points : 24
    Points
    24
    Par défaut Bloquer saisie clavier mais autoriser pour lecteur code barre.
    Bonjour a tous,

    J'ai un textbox sur un formulaire avec un label pour afficher les différentes saisies du textbox. Sa ok.
    J'aimerais pouvoir bloquer au clavier la saisie du texbox mais cependant, l'autoriser lorsque j'utilise un lecteur de code barre.

    Je ne sais absolument pas comment créer cette fonction.

    Quelqu'un peut-il me conseiller. Merci d'avance

    Cordialement

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2005
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2005
    Messages : 482
    Points : 625
    Points
    625
    Par défaut
    essaye de déclencher l'évènement KeyDown et de lui dire que la touche est gérée par toi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    private void TextBox1_KeyDown(object sender, KeyEventArgs e)
            {
                e.Handled = true
            }
    mais il me semble que ta douchette émule les touches du clavier; donc cette méthode risque de bloquer la lecture du code barre. Dans ce cas, je ne vois pas.

    au pire, n'empêche pas l'utilisateur de rentrer un code, et vérifie que ce code à le bon format...

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 31
    Points : 24
    Points
    24
    Par défaut
    mais il me semble que ta douchette émule les touches du clavier; donc cette méthode risque de bloquer la lecture du code barre. Dans ce cas, je ne vois pas.
    En effet la saisie par lecture de code barre correspond à une saisie au clavier. Ce qui me pose un probléme.

    au pire, n'empêche pas l'utilisateur de rentrer un code, et vérifie que ce code à le bon format...
    Oui j'ai déjà prévu de controler un minimum le format des saisies entrantes. Mais mes code barres changent régulièrement de format.

    En tous cas merci pour ton aide.

    Si quelqu'un à une solution s'il vous plait.

    Cordialement

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 002
    Points : 552
    Points
    552
    Par défaut
    tu peux t'inspirer de ce projet pour filtrer le device qui va bien:
    http://www.codeproject.com/KB/system/rawinput.aspx

  5. #5
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Bonjour,

    Si le TextBox est vide au départ, on pourrrait vérifier/supprimer une saisie clavier en gérant les timing des event TextChanged :
    • Etat 0 : Lorsqu'on reçoit un event TextChanged, on lance un timer de n millisecondes (n = quelques millisecondes > temps de transmission de tous les caractères de la douchette) et on passe à l'état 1.
    • Etat1 (le timer n'est pas écoulé) : Si un event TextChanged se produit, on ne fait rien.
    • Lorsque le timer est écoulé, si le TextBox contient moins de x caractères (x=nombre mini de caractères d'un code barre), on remet la TextBox à blanc.


    Remarque: un copier/coller pourra passer

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 31
    Points : 24
    Points
    24
    Par défaut
    Oui très très bonne idée Graffito. Je vais essayer sa. Merci beaucoup et bon code a tous.

    Cordialement

  7. #7
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Et pour faire plus zouli :
    Dans l'état 0 : affichage du texte de la textbox en normal (Noir sur blanc par exemple)
    Dans l'état 1 : affichage en invisible (blanc sur blanc).

    Par contre, corriger en repassant la douchette me parait plus problèmatique.
    En particulier, si l'utilisateur met le curseur au milieu du code barre!

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

Discussions similaires

  1. [AC-2007] Code pour lire avec le lecteur code barre
    Par massdiop26 dans le forum Access
    Réponses: 3
    Dernier message: 19/03/2013, 17h53
  2. Application pour Lecteur code barre
    Par kimausoleil dans le forum Windows Embedded
    Réponses: 1
    Dernier message: 29/11/2011, 16h31
  3. Identifier clavier/lecteurs codes barres
    Par Alikendarfen dans le forum Développement Windows
    Réponses: 1
    Dernier message: 01/05/2011, 14h17
  4. Saisie de formulaire avec lecteur code barre
    Par jano_dave dans le forum Langage
    Réponses: 2
    Dernier message: 04/05/2009, 16h21
  5. Bloquer le clavier mais pas la souris
    Par Zenar dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 18/10/2005, 12h02

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