![]() |
[Tkinter] About Tkinter Treeview.selection_get() usage. - Printable Version +- Python Forum (https://python-forum.io) +-- Forum: Python Coding (https://python-forum.io/forum-7.html) +--- Forum: GUI (https://python-forum.io/forum-10.html) +--- Thread: [Tkinter] About Tkinter Treeview.selection_get() usage. (/thread-36367.html) |
About Tkinter Treeview.selection_get() usage. - water - Feb-11-2022 Tkinter Treeview widget has selection_get , but document not introduce about that, how to use it?from tkinter import Tk, ttk root_ = Tk() tree1 = ttk.Treeview(root_, height = 10, selectmode = 'browse') tree1.insert('', 'end', text = 'item 0') tree1.insert('', 'end', text = 'item 1') tree1.insert('', 'end', text = 'item 2') tree1.insert('', 'end', text = 'item 3') tree1.selection_get()
RE: About Tkinter Treeview.selection_get() usage. - menator01 - Feb-11-2022 If you are wanting to get the values of selected row, maybe this will help get you started. #! /usr/bin/env python3 import tkinter as tk from tkinter import ttk from tkinter import messagebox class Window: def __init__(self, parent): columns = ('Column 1', 'Column 2', 'Column 3', 'Column 4') self.tree = ttk.Treeview(parent, columns=columns, show='headings', selectmode='browse') for column in columns: self.tree.heading(column, text=column) data = [] for i in range(1, 50): data.append((f'Column 1 Data {i}', f'Column 2 Data {i}', f'Column 3 Data {i}', f'Column 4 Data {i}')) for info in data: self.tree.insert('', tk.END, values=info) self.tree.grid(column=0, row=0, sticky='news') scrollbar = ttk.Scrollbar(parent, command=self.tree.yview) self.tree.configure(yscroll=scrollbar.set) scrollbar.grid(column=4, row=0, sticky='ns') self.tree.bind('<ButtonRelease-1>', self.selectItem) def selectItem(self, event): current_item = self.tree.focus() messagebox.showinfo('Current Selection', f'{self.tree.item(current_item)}') def main(): root = tk.Tk() Window(root) root.mainloop() main() RE: About Tkinter Treeview.selection_get() usage. - deanhystad - Feb-11-2022 It is inherited from tk.XView. From the code: Lib/tkinter/__init__.py Wrote:It does not look like this is meant to be used in programs.def selection_get(self, **kw): """Return the contents of the current X selection. A keyword parameter selection specifies the name of the selection and defaults to PRIMARY. A keyword parameter displayof specifies a widget on the display to use. A keyword parameter type specifies the form of data to be fetched, defaulting to STRING except on X11, where UTF8_STRING is tried before STRING.""" if 'displayof' not in kw: kw['displayof'] = self._w if 'type' not in kw and self._windowingsystem == 'x11': try: kw['type'] = 'UTF8_STRING' return self.tk.call(('selection', 'get') + self._options(kw)) except TclError: del kw['type'] return self.tk.call(('selection', 'get') + self._options(kw)) From the documentation for tk: https://tcl.tk/man/tcl8.7/TkCmd/selection.html Wrote:selection get ?-displayof window? ?-selection selection? ?-type type? RE: About Tkinter Treeview.selection_get() usage. - water - Feb-12-2022 Thanks for reply. |