Problème récupération ligne liste tkinter
Résolu
worox
Messages postés
23
Date d'inscription
Statut
Membre
Dernière intervention
-
Phil_1857 Messages postés 1872 Date d'inscription Statut Membre Dernière intervention -
Phil_1857 Messages postés 1872 Date d'inscription Statut Membre Dernière intervention -
Bonjour, je cherche à récupérer la ligne sélectionnée dans ma liste.
Voici le code morceau de code en question.
Pour expliquer avant, quand je clique sur une ligne, une erreur apparait.
def get_list1(): index = list1.curselection() print(index) pass list1.bind("<<ListboxSelect>>", get_list1)
l'erreur que me sort le programme est la suivante :
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Python310\lib\tkinter\__init__.py", line 1921, in __call__
return self.func(*args)
TypeError: get_list1() takes 0 positional arguments but 1 was given
Si vous souhaitez le code entier pour l'exécuter, le voici :
from tkinter import * def Confirm(): fr_entry_1.get() if fr_entry_1.get() == i: erer1.set("") i_n = 1 else: fr_entry_1.set("") erer1.set(m_inco) i_n = 0 if tr_entry_2.get() == m_hard: erer2.set("") m_n = 3 elif tr_entry_2.get() == m_medio: erer2.set("") m_n = 2 elif tr_entry_2.get() == m_simple: erer2.set("") m_n = 1 else: tr_entry_2.set("") erer2.set(m_inco) m_n = 0 if m_n == 1 and i_n == 1: print("cool") label_acceuil.pack_forget() frame_mp.pack_forget() entry_1.pack_forget() erreur1.pack_forget() entry_2.pack_forget() erreur2.pack_forget() confirm.pack_forget() label_expli1.pack(side="top") list1.pack() entry_mot_de_passe1.pack(pady=5) buton_add1.pack(side='bottom') elif m_n == 2 and i_n == 1: print("cool") label_acceuil.pack_forget() frame_mp.pack_forget() entry_1.pack_forget() erreur1.pack_forget() entry_2.pack_forget() erreur2.pack_forget() confirm.pack_forget() label_expli2.pack(side="top") elif m_n == 3 and i_n == 1: print("cool") label_acceuil.pack_forget() frame_mp.pack_forget() entry_1.pack_forget() erreur1.pack_forget() entry_2.pack_forget() erreur2.pack_forget() confirm.pack_forget() label_expli3.pack(side="top") def Add1(): buton_add1.pack_forget() label_expli1.pack_forget() entry_mot_de_passe1.pack_forget() list1.pack_forget() label_expli_case.pack(side="top") frame_add_pass.pack(pady=20) entry_name.pack() label_name.pack() entry_pass.pack() label_pass.pack() entry_lien.pack(pady=5) bouton_confirme_add1.pack() bouton_annuler_add1.pack() def BoutonConfirmeAdd1(): global pass_word global nam_word global lien_word index_list1 = list1.size() case1 = entry_name_var.get() case2 = entry_pass_var.get() case3 = entry_lien_var.get() case3alter = "_" case1n = len(case1) case2n = len(case2) case3n = len(case3) ok1 = 0 ok2 = 0 print(case1) print(case2) print(case3) print(case1n) print(case2n) if case1n < 1: label_name_var.set(m_inco) else: print("cool") label_name_var.set("") ok1 = 1 if case2n < 15: label_pass_var.set(m_inco) else: print("cool") label_pass_var.set("") ok2 = 2 if ok1 == 1 and ok2 == 2: nam_word.append(case1) pass_word.append(case2) if case3n < 1: lien_word.append(case3alter) else: lien_word.append(case3) print(nam_word) print(pass_word) print(lien_word) list1.insert(index_list1, nam_word) label_expli_case.pack_forget() frame_add_pass.pack_forget() entry_name.pack_forget() entry_name_var.set("") label_name.pack_forget() entry_pass.pack_forget() entry_pass_var.set("") label_pass.pack_forget() entry_lien.pack_forget() entry_lien_var.set("") bouton_confirme_add1.pack_forget() bouton_annuler_add1.pack_forget() label_expli1.pack(side="top") list1.pack() entry_mot_de_passe1.pack(pady=5) buton_add1.pack(side='bottom') def BoutonAnnulerAdd1(): label_expli_case.pack_forget() frame_add_pass.pack_forget() entry_name.pack_forget() entry_name_var.set("") label_name.pack_forget() entry_pass.pack_forget() entry_pass_var.set("") label_pass.pack_forget() entry_lien.pack_forget() entry_lien_var.set("") bouton_confirme_add1.pack_forget() bouton_annuler_add1.pack_forget() label_expli1.pack(side="top") list1.pack() buton_add1.pack(side='bottom') def get_list1(): index = list1.curselection() print(index) pass pass_word = [] nam_word = [] lien_word = [] acc = "Bienvenue dans le stockage de mot de passe de niveau " m_inco = "incorrect" m_hard = "Harry@thme!tique56,suitedefibonacci" m_medio = "Harry@thme!tique56" m_simple = "Hardouin@56" i = "worox" i_n = 0 m_n = 0 # fenêtre info ftr = Tk() ftr.geometry("250x250") ftr.minsize(50, 50) ftr.maxsize(500, 500) ftr.configure(bg="#1277F1") # pr acceuille label_acceuil = Label(ftr, text="bienvenue", bg="#1296F1") frame_mp = Frame(ftr, bg="#4FF112", borderwidth=1) fr_entry_1 = StringVar() tr_entry_2 = StringVar() fr_entry_1.set("worox") tr_entry_2.set("Hardouin@56") entry_1 = Entry(frame_mp, width=20, textvariable=fr_entry_1) entry_2 = Entry(frame_mp, width=20, textvariable=tr_entry_2) erer1 = StringVar() erreur1 = Label(frame_mp, textvariable=erer1) erer2 = StringVar() erreur2 = Label(frame_mp, textvariable=erer2) confirm = Button(ftr, text="confirmer", bg="#EB7C07", command=Confirm) # tr add1 label_expli1 = Label(ftr, text=f"{acc}1") list1 = Listbox(ftr) entry_mot_de_passe1_var = StringVar() entry_mot_de_passe1 = Entry(ftr, textvariable=entry_mot_de_passe1_var) buton_add1 = Button(ftr, text="ajouter un mot de passe", command=Add1) # tr add1 mot de passe frame_add_pass = Frame(ftr) label_expli_case = Label(frame_add_pass, text="completer les cases ci dessous") entry_name_var = StringVar() entry_name = Entry(frame_add_pass, textvariable=entry_name_var) label_name_var = StringVar() label_name = Label(frame_add_pass, textvariable=label_name_var) entry_pass_var = StringVar() entry_pass = Entry(frame_add_pass, textvariable=entry_pass_var) label_pass_var = StringVar() label_pass = Label(frame_add_pass, textvariable=label_pass_var) entry_lien_var = StringVar() entry_lien = Entry(frame_add_pass, textvariable=entry_lien_var) bouton_confirme_add1 = Button(ftr, text="Confirmer", command=BoutonConfirmeAdd1) bouton_annuler_add1 = Button(ftr, text="annuler", command=BoutonAnnulerAdd1) # tr add2 label_expli2 = Label(ftr, text=f"{acc}2") # tr add3 label_expli3 = Label(ftr, text=f"{acc}3") # pack acceuille label_acceuil.pack(side="top", fill="x") frame_mp.pack(pady=50, padx=50) entry_1.pack(pady=5, padx=5) erreur1.pack() entry_2.pack(pady=5, padx=5) erreur2.pack() confirm.pack() list1.bind("<<ListboxSelect>>", get_list1) ftr.mainloop()
Merci d'avance.
Windows / Chrome 104.0.0.0
A voir également:
- Problème récupération ligne liste tkinter
- Liste déroulante excel - Guide
- Partager photos en ligne - Guide
- Mètre en ligne - Guide
- Liste déroulante en cascade - Guide
- Aller à la ligne excel - Guide