Je suis débutant python, j'utilise tkinter, et ma version est la 2.7.6. J'ai créé un petit programme. Il marche impeccable, cependant j'ai fait un formulaire avec des Entry pour créer des contacts dans le dictionnaire. Dans le formulaire j'ai un bouton validé mais il valide dès l'ouverture du toplevel (formulaire avec les Entry) alors que je n'ai pas cliqué sur le bouton valider. Comment dois-je faire ?
Mais il nous manque des bouts de code pour comprendre comment le programme roule. Sinon tu devrais essayer de créer ton formulaire avec des liste et des loops. Le code serait plus facile à modifier plus court et plus clair. Je te montre un exemple que je ne me souviens plus d'où je l'avais copié. J'esserai de retrouver la source et d'éditer mon message.
#!/usr/bin/python3
from tkinter import *
fields = 'Last Name', 'First Name', 'Job', 'Country'
def fetch(entries):
for entry in entries:
field = entry[0]
text = entry[1].get()
print('%s: "%s"' % (field, text))
def makeform(root, fields):
entries = []
for field in fields:
row = Frame(root)
lab = Label(row, width=15, text=field, anchor='w')
ent = Entry(row)
row.pack(side=TOP, fill=X, padx=5, pady=5)
lab.pack(side=LEFT)
ent.pack(side=RIGHT, expand=YES, fill=X)
entries.append((field, ent))
return entries
if __name__ == '__main__':
root = Tk(className='Form')
ents = makeform(root, fields)
root.bind('<Return>', (lambda event, e=ents: fetch(e)))
b1 = Button(root, text='Show',
command=(lambda e=ents: fetch(e)))
b1.pack(side=LEFT, padx=5, pady=5)
b2 = Button(root, text='Quit', command=root.quit)
b2.pack(side=LEFT, padx=5, pady=5)
root.mainloop()
Valider des entry avec un bouton
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.