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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
import csv
import tkinter as tk
from tkinter import ttk
from tkinter.messagebox import showinfo
from tkinter import filedialog
file_csv = filedialog.askopenfilename(title="Ouvrir le fichier CSV",
filetypes=[('fichier de configuration', '.csv'), ('all files', '.*')],
multiple=False)
# rien de choisi --> sortie
if not file_csv:
return
ffile = open(file_csv)
csvreader = csv.reader(ffile, delimiter=";")
header = next(csvreader)
columns=header
rows = []
root1 = tk.Tk()
root1.geometry("500x400")
root1.title(file_csv)
# define columns
#columns = ('first_name', 'last_name', 'email')
treev = ttk.Treeview(root1, columns=columns, show='headings')
vsb = ttk.Scrollbar(root1, orient="vertical", command=treev.yview)
vsb.place(relx=0.978, rely=0.175, relheight=0.713, relwidth=0.020)
hsb = ttk.Scrollbar(root1, orient="horizontal", command=treev.xview)
hsb.place(relx=0.014, rely=0.875, relheight=0.020, relwidth=0.965)
treev.configure(xscrollcommand=hsb.set,yscrollcommand=vsb.set )
# define headings
for i in columns:
treev.heading(i, text=i)
treev.column(i, width=100, minwidth=100,stretch=0)
for row in csvreader:
rows.append(row)
ffile.close()
for contact in rows:
treev.insert('', tk.END, values=contact)
treev.grid(row=0, column=0, sticky='nsew')
# run the app
root1.mainloop() |
Partager