Intercettare codice da barcode in emulazione tastiera

di il
5 risposte

Intercettare codice da barcode in emulazione tastiera

Buongiorno a tutti.
Io dovrei gestire in qualche modo il codice che mi proviene da un lettore di barcode connesso in USB e funzionante in emulazione tastiera.
Mi spiego meglio:
Bippando un codice, i dati mi arrivano come se avessi collegato una tastiera e vengono scritti nel controllo di immissione che ha il focus in quel momento. Però immaginatevi di avere una serie di controlli sul form (textbox, datagrid, ecc.) ma volere che il codice venga scritto in un ben determinato campo preposto e non in quello che casualmente ha il focus. Come si potrebbe fare?
Ho pensato che forse si potrebbe intercettare l'evento prima che venga inviato al controllo (qualche API ?).
E poi: come distinguere che il dato sta arrivando dal lettore e non dalla tastiera reale anch'essa connessa in USB?

5 Risposte

  • Re: Intercettare codice da barcode in emulazione tastiera

    Ciao Lucios,

    questa è base di programmazione ....

    setti il focus sul tuo TextBox e spari col lettore di codice a barre in emulazione e ti ci trovi il tuo bel codice EAN 128 ecc..

    Se non devi fare altro passi il focus su altro controllo.

    Spero di averti dato la dritta giusta.
  • Re: Intercettare codice da barcode in emulazione tastiera

    questa è base di programmazione ....
    setti il focus sul tuo TextBox e spari col lettore di codice a barre in emulazione e ti ci trovi il tuo bel codice EAN 128 ecc..
    Se non devi fare altro passi il focus su altro controllo.
    Beh... no, forse non mi sono spiegato bene...
    E' ovvio che il barcode scrive nel campo che ha il focus.
    Immagina però di avere un form di immissione dati con tanti textbox ma che solo uno di essi deve accettare il barcode e gli altri il normale input da tastiera. Il focus può essere un textbox qualsiasi quindi, all'arrivo dei dati del barcode dovrei spostare automaticamente il focus sul textbox giusto.
    Questa cosa forse si potrebbe risolvere utilizzando il keypreview del form ma come faccio a capire se i dati mi stanno arrivando dal barcode oppure dalla tastiera reale?
  • Re: Intercettare codice da barcode in emulazione tastiera

    Ciao Lucios, premetto che non ho esperienza diretta ma credo potresti verificare se la pistola supporta diverse emulazioni; magari ce n'é una che ti permette di riconoscere che l'input arriva da lei, ad esempio se ti da un carattere di inizio trasmissione.
  • Re: Intercettare codice da barcode in emulazione tastiera

    Ci ho lavorato tempo fa e se non ricordo male, l'evento KeyUp si verifica solo quando si digita da tastiera, non quando si legge con il lettore BarCode.
    Infatti in alcuni casi io dovevo disabilitare l'inserimento da tastiera ed obbligare l'utente ad usare solo il lettore.

    Fai dei test...
  • Re: Intercettare codice da barcode in emulazione tastiera

    Ciao Lucios, premetto che non ho esperienza diretta ma credo potresti verificare se la pistola supporta diverse emulazioni; magari ce n'é una che ti permette di riconoscere che l'input arriva da lei, ad esempio se ti da un carattere di inizio trasmissione.
    Non ci avevo pensato anche perchè la documentazione allegata è davvero scarna (non ho scelto io il modello purtroppo). Ora verifico.
    Ci ho lavorato tempo fa e se non ricordo male, l'evento KeyUp si verifica solo quando si digita da tastiera, non quando si legge con il lettore BarCode.
    Infatti in alcuni casi io dovevo disabilitare l'inserimento da tastiera ed obbligare l'utente ad usare solo il lettore.
    Mi sembra anche questa una buona idea, verifico.
    Grazie ad entrambi.
Devi accedere o registrarti per scrivere nel forum
5 risposte