Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    13

    [VB6] HELP! Tasti Funzione e Barcode

    Devo fare in modo che leggendo una striga con un barcode full ascii code 39 mi vengano premuti dei command button.
    Ora ho provato a mettere la scelta rapida nei bottoni (ALT+LETTERA) ma come faccio a far sì che il lettore barcode legga queste combinazioni di caratteri.. non ho il barcode.

    Allora ho provato a attivare i tasti funzione e alla pressione di questi collegare l'evento click dei pulsanti, solo che quando vado a leggere i tasti funzione con il barcode, che sono dati da una combinazione di caratteri (F1=$TA), lui mi legge solo il primo carattere...

    Sono in crisi, accetto consigli e prove
    GRAZZZZIE

  2. #2
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    Non si capisce quasi niente del tuo problema :
    1) Devi leggere un barcode.
    2) Ad un certo barcode assegni un tasto funzione.
    E' giusto almeno fino a qui?
    Poi ?
    Ciao, Brainjar

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    13
    Sostanzialmente devo fare in modo che leggendo una stringa col barcode mi venga richiamato il click di un tasto.
    Ovviamente non posso fare che se leggi "a" mi attivi la pressione del tasto, quindi ho pensato di attivare le cose più elementari come la seleizone breve (alt+lettera) oppure i tasti funzione ma non sono riuscito a trovare una stringa in codice barcode che mi corrispondesse a queste combinazioni.
    Spero di essere stato più chiaro.

  4. #4
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    Adesso va decisamente meglio.
    Quando leggi il barcode, questo viene trasformato in una stringa
    alfanumerica direttamente dal lettore. Se leggi il barcode quando
    hail il focus in una textbox, quest'ultima verrà riempita con la
    stringa risultante in un colpo solo.
    L'evento scatenato è il textBox_Change().

    Qui dentro puoi fare tutte le comparazioni che vuoi.
    Esempio :
    codice:
    Private Sub Text1_Change()
    
    End Sub
    Ciao, Brainjar

  5. #5
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    E' partito l'invio accidentalmente .....
    codice:
    Private Sub Text1_Change()
    
        If Text1.Text = "9788838642517"  Then 
            ' Fai una cosa
        End If 
        If Text1.Text = "9788838643155"  Then 
            ' Fai un' altra cosa
        End If 
    
    End Sub
    In questo modo testi i codici a barre che ottieni e non ti devi
    porre il problema di creare un codice a barre per ALT + "T"+ "A".
    Ciao, Brainjar

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    13
    Grazzzzie, il mio problema è che io posso avere il fuoco in qulunque punto della form e in qualunque istante mi venga letta una determinata stringa simulare la pressione del tasto.

    Con la tastiera è semplice in qualunque punto faccio alt+lettera o f e qualcosa e vado ma dal barcode come faccio??

  7. #7
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    Come ho già indicato molte volte, non ho VB60 installato in ufficio.
    Per cui non posso provare una soluzione. Sono sicuro che, comunque, è
    fattibile.
    Se non ricevi ulteriori aiuti, pazienta un po' che ti posto una
    soluzione.
    Ciao, Brainjar

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    13
    Grazie gentilissimo!

  9. #9
    Non è semplice.
    Se hai collegato il lettore alla tastiera non sei in grado di stabilire da dove arriva il segnale, perchè in tutti e due i casi (lettore e tastiera) arriva dalla stessa porta. Quindi dovresti inserire alla fine di ogni evento command_click un comando per passare il focus su una TextBox (magari nascosta), ma se poi l'utente clicca altrove perdi il focus.
    Se il lettore è collegato al pc tramite un'altra porta ti basta intercettare l'arrivo dei dati, ma il programma si complica.

    Una soluzione semplice potrebbe essere questa:
    Quando leggi un barcode ogni sua cifra viene trasmessa al pc una dopo l'altra, in un tempo talmente breve che sarebbe impossibile scriverle a mano con la stessa velocità. Per esempio è impossibile (per me, credo anche per tutti) scrivere 13 cifre in un decimo di secondo. Quindi se in un qualsiasi oggetto viene premuto un tasto fai partire un timer con un clock pari ad un decimo di secondo (timer.clock=100) e memorizzi il carattere in una nuova stringa. Se viene premuto un altro tasto ed il timer è attivo lo accodi nella variabile stringa. All'evento clock fermi il timer. Se sono stati premuti almeno N caratteri vuol dire che questi arrivano dal lettore (N sicuramente lo conosci te in base ai codici che ti aspetti, di solito il cod 39 non scende sotto i 7 caratteri, in media è intorno agli 11). Se i caratteri sono inferiori a N (in un tempo così piccolo saranno quasi sicuramente 1, in rari casi 2) vuol dire che arrivano da tastiera e ti comporti di conseguenza.

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    13
    "...Quindi se in un qualsiasi oggetto viene premuto un tasto fai partire un timer con un clock pari ad un decimo di secondo..."

    Dovrei far partire il timer con la pressione di un tasto da qualunque punto della form... l'utente potrebbe leggermi la striga che mi dice di premere il pulsante quando ha il fuoco alla form così come in una casella di testo o in una griglia...

    CRISI PROFONDA CRISI

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.