diff options
author | Vikas Kushwaha <dev@vikas.rocks> | 2024-11-21 13:23:10 +0530 |
---|---|---|
committer | Vikas Kushwaha <dev@vikas.rocks> | 2024-11-21 13:23:10 +0530 |
commit | 8f0751170385989677392f806762a211f99412ef (patch) | |
tree | f09ad917798fa313edb77925a1ddbc6de8fb37ce /test/table.py |
First Commit
Diffstat (limited to 'test/table.py')
-rw-r--r-- | test/table.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/test/table.py b/test/table.py new file mode 100644 index 0000000..875d25c --- /dev/null +++ b/test/table.py @@ -0,0 +1,49 @@ +from tkinter import * + +import tkinter as tk +from tkinter import ttk +from tkinter.messagebox import showinfo + +root = tk.Tk() +root.title('Treeview demo') +root.geometry('620x200') + +# define columns +columns = ('first_name', 'last_name', 'email') + +tree = ttk.Treeview(root, columns=columns, show='headings') + +# define headings +tree.heading('first_name', text='First Name') +tree.heading('last_name', text='Last Name') +tree.heading('email', text='Email') + +# generate sample data +contacts = [] +for n in range(1, 100): + contacts.append((f'first {n}', f'last {n}', f'email{n}@example.com')) + +# add data to the treeview +for contact in contacts: + tree.insert('', tk.END, values=contact) + + +def item_selected(event): + for selected_item in tree.selection(): + item = tree.item(selected_item) + record = item['values'] + # show a message + showinfo(title='Information', message=','.join(record)) + + +tree.bind('<<TreeviewSelect>>', item_selected) + +tree.grid(row=0, column=0, sticky='nsew') + +# add a scrollbar +scrollbar = ttk.Scrollbar(root, orient=tk.VERTICAL, command=tree.yview) +tree.configure(yscroll=scrollbar.set) +scrollbar.grid(row=0, column=1, sticky='ns') + +# run the app +root.mainloop() |