Fonction insert d'un treeview qui ne fonctionne pas
Tom13190
-
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 à tous,
j'a le problème suivant qui me pose du souci depuis quelques jours:
Je crée une frame sous tkinter. Dans un fichier parallèle, j'ai créé une fonction qui crée des treeview avec quelques paramètres.
Au chargement de la page principale, les différents treeview sont créés (avec la fonction) avec les bons noms de colonne. Jusque là tout va bien...
Sur ma frame principale, j'ai créé un bouton qui récupère des données depuis des entrys ou des radiobutton et remplit avec mes différents treviews.
Et là , sans aucun message d'erreur, rien ne se passe.
Voici le bout de code qui pose probléme:
J'ai vérifié que le tuple de valeuirs soient correct et que le treeview existe bien . Tout ça , c'est bon.
Auriez vous une idée de là où ça coince?
Merci pour vos réponses
j'a le problème suivant qui me pose du souci depuis quelques jours:
Je crée une frame sous tkinter. Dans un fichier parallèle, j'ai créé une fonction qui crée des treeview avec quelques paramètres.
Au chargement de la page principale, les différents treeview sont créés (avec la fonction) avec les bons noms de colonne. Jusque là tout va bien...
Sur ma frame principale, j'ai créé un bouton qui récupère des données depuis des entrys ou des radiobutton et remplit avec mes différents treviews.
Et là , sans aucun message d'erreur, rien ne se passe.
Voici le bout de code qui pose probléme:
ossature_data.insert('','end',values=(n_fp_oss,type_rail,"3",int(n_rail)))
J'ai vérifié que le tuple de valeuirs soient correct et que le treeview existe bien . Tout ça , c'est bon.
Auriez vous une idée de là où ça coince?
Merci pour vos réponses
A voir également:
- Fonction insert d'un treeview qui ne fonctionne pas
- Fonction si et - Guide
- Touche insert - Guide
- Disk boot failure insert system disk and press enter - Guide
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
5 réponses
Bonjour,
Avec le code complet, ce serait mieux
Et avec les balises:
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Avec le code complet, ce serait mieux
Et avec les balises:
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Voici la fonction qui crée le treeview:
Ensuite, je crée le treeview dans ma frame de cette façon:
Et jeremplis le treeview de cette façon lorsque que je clique sur un bouton:
Est ce assez détaillé?
def treeview_init(nom:ttk.Treeview,parent_name:ttk.Widget,data_columns:dict): kolumns=[] style1 = ttk.Style() style1.layout("style1", [('style1', {'sticky': 'nswe'})]) for key in data_columns: kolumns.append(key) nom = ttk.Treeview(parent_name, columns=kolumns, show='headings', style="style1") nom.place(x=0, y=0, width=parent_name.winfo_width(), height=parent_name.winfo_height()) for key in data_columns: if key=="Num": nom.column(key, anchor=CENTER,width=10) else: nom.column(key, anchor=CENTER,width=80) for key in data_columns: nom.heading(key,text=data_columns[key], anchor=CENTER) nom.place vscroll1 = ttk.Scrollbar(nom) vscroll1.configure(command=nom.yview) nom.configure(yscrollcommand=vscroll1.set) vscroll1.pack(side=RIGHT, fill=BOTH) nom.place
Ensuite, je crée le treeview dans ma frame de cette façon:
ossature_data=ttk.Treeview() treeview_init(ossature_data,ossature_lblf, Num":"#","Type_ossature":"Type","Longueur_ossature":"Longueur (m)","Nombre_ossature":"Nbre"})
Et jeremplis le treeview de cette façon lorsque que je clique sur un bouton:
ossature_data.insert('','end',values=(n_fp_oss,type_rail,"3",int(n_rail)))
Est ce assez détaillé?
Bonjour,
Déjà, moi, en exécutant ton code, j'ai une erreur de syntaxe ici:
Num":"#"
Déjà, moi, en exécutant ton code, j'ai une erreur de syntaxe ici:
treeview_init(ossature_data,main_win, Num":"#","Type_ossature":"Type","Longueur_ossature":"Longueur (m)","Nombre_ossature":"Nbre"}
Num":"#"
Je n'avais pas cette erreur dans mon code...Bizarre. Peut être un problème au copier-coller.
Du coup, même avec cette correction ça ne marche pas et je n'ai aucun message d'erreur
Du coup, même avec cette correction ça ne marche pas et je n'ai aucun message d'erreur
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Avec la correction :

Sinon, tu crée 2 tree view, c'est normal ?? :
Et ensuite, tu appelles ta fonction treeview_init, et dedans :
A tout hasard, ci-dessous un code simple et qui fonctionne avec le minimum à mettre en œuvre pour un tree view,
teste-le et compare avec ton code pour essayer de comprendre ce qui ne va pas:
Avec la correction :
Sinon, tu crée 2 tree view, c'est normal ?? :
ossature_data=ttk.Treeview()
Et ensuite, tu appelles ta fonction treeview_init, et dedans :
nom = ttk.Treeview(..................
A tout hasard, ci-dessous un code simple et qui fonctionne avec le minimum à mettre en œuvre pour un tree view,
teste-le et compare avec ton code pour essayer de comprendre ce qui ne va pas:
import tkinter as tk from tkinter import ttk main_win = tk.Tk() main_win.title('Treeview demo') main_win.geometry('620x250') _columns = ('first_name', 'last_name', 'email') tree = ttk.Treeview(main_win, columns=_columns, show='headings') tree.heading('first_name', text='First Name') tree.heading('last_name', text='Last Name') tree.heading('email', text='Email') tree.grid(row=0, column=0, sticky='nsew') # generation des données contacts = [] for n in range(1, 100): contacts.append((f'first {n}', f'last {n}', f'email{n}@example.com')) # insertion des données for contact in contacts: tree.insert('', tk.END, values=contact) scrollbar = ttk.Scrollbar(main_win, orient=tk.VERTICAL, command=tree.yview) tree.configure(yscroll=scrollbar.set) scrollbar.grid(row=0, column=1, sticky='ns') main_win.mainloop()