Bonjour à tous,

Dans le cadre d'un projet d'automatisation comprenant différents modules, je rencontre des difficultés quant à la manipulation de l'objet treeview.
Je fais appel à vos avis et vos conseils.

Objectifs :
1. récupérer dans un fichier la liste des capteurs existants et les afficher sous forme de tableau.
2. parcourir d'autres fichiers afin de connaitre le statut du capteur.

Objectif 1 :
Atteint. Les données sont bien récupérées et affichées sous le format souhaité.
Note : C'est un bouton qui déclenche l'action, il n'est pas dans le code présenté ci-dessous.

Objectif 2 :
En cliquant sur un autre bouton, je souhaite récupérer les noms des capteurs qui sont affichés dans le treeview.
Ces noms seront utilisés comme mot-clé dans les recherches effectuées dans d'autres fichiers.
Les recherches permettront d'obtenir le statut du capteur :

  • n'existe pas (capteur pas trouvé)
  • actif (capteur trouvé, actif)
  • inactif (capteur trouvé, inactif)


Les questions :
- Je n'arrive pas à obtenir l'information dont j'ai besoin à savoir juste le nom du capteur. Comment procéder ?
- Est-ce une erreur d'utiliser le treeview comme conteneur d'information ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import tkinter as tk
from tkinter import ttk
 
root = tk.Tk()
root.title('Capteurs')
root.geometry('600x200')
 
# columns
columns = ('#1', '#2', '#3')
 
tree = ttk.Treeview(root, columns=columns, show='headings')
 
# define headings
tree.heading('#1', text='Name')
tree.heading('#2', text='Type')
tree.heading('#3', text='Statut')
 
# generate sample data
capteur_list = []
for n in range(1, 7):
    capteur_list.append((f'capteur_name {n}', f'capteur_type {n}', f' '))
 
# adding data to the treeview
for capteur in capteur_list:
    tree.insert('', tk.END, values=capteur)
 
tree.grid(row=0, column=0, sticky='nsew')
 
# run the app
root.mainloop()