Boujour,
j'utilise un programme a mon boulot fait par mes soins en python et avec une interface TKinter qui permet de lister une commande apres avoir scanner les pieces mais nous avons changer de lecteur de code barre et le nouveau n'a pas dans le pilote d'option pour inserer un "Enter" apres la lecture du code barre.
self.EntryRef.bind("<Return>", AjouterRef)
avant je scanner le code barre et grace a l'option du pilote celui ci simuler l'appui sur la touche ENTER. Maintenant je suis obliger de presser la touche manuellement.
la solution que j'ai pense etre bonne est de lire le champ et si celui ci comporte 13 chiffres il lance ma fonction AjouterRef. Mais je sais pas comment l'ecrire ni meme si il n'y pas plus simple :p
merci de votre aide
Cordialement,
def AjouterRef(event):
Ref= self.EntryRef.get()
#Expresion reguliere pour voir si l'on a scanner un code barre ou rentréé une référence a la main (étiquette illisible)
CodeBarre = re.compile('([0-9]){13}')
#on ouvre le fichier avec la liste des code barre;Référence
filin = open('Article.csv', 'r')
lignes = filin.readlines()
for row in lignes:
row = row.replace('\r\n', '')
L= string.split(row, ";")
#si on a scanner un code barre et que la colonne 1 correspond a ce code barre
if CodeBarre.search(Ref) and L[0]==Ref:
#...je zappe le reste qui enregistre dans une basse SQLite
#...des info
#si ce n'est pas un code barre mais une référence existante taper a la main
elif L[1]==Ref:
#...je zappe le reste qui enregistre dans une basse SQLite
#...des info
LabelRef= Label(FrameFichierEtiquette, text='Référence ou Code Barre:', width= 20).grid(row= 1,column= 1)
self.EntryRef= Entry(FrameFichierEtiquette, width= 15)
self.EntryRef.bind("<Return>", AjouterRef)
self.EntryRef.grid(row= 1,column= 2)