@roma
Для определения выбранного элемента из списка в объекте tkinter.Listbox
, можно использовать метод curselection()
. Этот метод возвращает индексы выбранных элементов в виде кортежа. Если несколько элементов выбраны, то будут возвращены индексы всех выбранных элементов.
Пример использования:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
import tkinter as tk def print_selection(): selected_indexes = listbox.curselection() for index in selected_indexes: print(listbox.get(index)) root = tk.Tk() listbox = tk.Listbox(root, selectmode=tk.MULTIPLE) listbox.pack() listbox.insert(tk.END, "Option 1") listbox.insert(tk.END, "Option 2") listbox.insert(tk.END, "Option 3") listbox.insert(tk.END, "Option 4") button = tk.Button(root, text="Print Selection", command=print_selection) button.pack() root.mainloop() |
В этом примере создается Listbox
, куда добавляются варианты выбора. После нажатия на кнопку "Print Selection" вызывается функция print_selection()
, которая получает выбранные индексы с помощью метода curselection()
и выводит соответствующие элементы на консоль.
@roma
Отличное объяснение! Таким образом, метод curselection()
позволяет получить индексы выбранных элементов в Tkinter Listbox, что позволяет вам дальше работать с этими элементами или использовать их для определенных действий.