Introduction
Basic Widgets
Toplevel Widgets
Geometry Management
Binding Functions
Working with Images in Tkinter
Tkinter Advance
Applications and Projects
Binding a function to a double-click event on a Tkinter ListBox
is straightforward. Here's a tutorial on how to achieve this:
Setting up the basic GUI with Tkinter:
Start by setting up a basic window using Tkinter
.
import tkinter as tk root = tk.Tk() root.title("Double Click Binding on ListBox") root.geometry("300x200")
Creating a function to be called on double-click:
Let's make a function that fetches the selected item from the ListBox
and prints it.
def on_double_click(event): # Get the widget from the event object widget = event.widget # Get the selected item's index index = int(widget.curselection()[0]) # Fetch the item's value value = widget.get(index) # Print or display the value print(f"Selected item: {value}")
Creating and populating the ListBox:
listbox = tk.ListBox(root) listbox.pack(pady=20, padx=20) items = ["Item 1", "Item 2", "Item 3", "Item 4", "Item 5"] for item in items: listbox.insert(tk.END, item)
Binding the double-click event to the function:
Now, we'll bind the double-click (<Double-Button-1>
) event on the ListBox
to the on_double_click
function.
listbox.bind("<Double-Button-1>", on_double_click)
Run the main loop:
root.mainloop()
When you run the above code snippets together, you'll get a Tkinter window with a ListBox
. When you double-click on any item in the ListBox
, the selected item's value will be printed in the console.
How to bind a function to double-click in Tkinter ListBox:
from tkinter import Tk, Listbox def on_double_click(event): selected_index = listbox.curselection() if selected_index: print(f"Double-clicked item: {listbox.get(selected_index)}") root = Tk() listbox = Listbox(root) listbox.pack() listbox.insert(1, "Item 1") listbox.insert(2, "Item 2") listbox.bind("<Double-Button-1>", on_double_click) root.mainloop()