#!python # -*- mode: python; Encoding: utf-8; coding: utf-8 -*- # Last updated: <2021/12/10 12:29:46 +0900> """ tkinterdnd2 sample. pip install tkinterdnd2 Windows10 x64 21H1 + Python 3.9.9 64bit + tkinterdnd2 0.3.0 """ import tkinter as tk from tkinter import ttk from tkinterdnd2 import * def drop(event): print(event.data) text.set(event.data) # Main window root = TkinterDnD.Tk() root.geometry("640x100") root.title("Drag and drop with Entry") text = tk.StringVar() text.set("Please file drop") entry = ttk.Entry(root, textvariable=text) entry.pack(expand=True, fill=tk.X, padx=16, pady=8) entry.drop_target_register(DND_FILES) entry.dnd_bind("<>", drop) # .dnd_bind("<>", drop) と記述されたサンプルを見かけたけれど # 現行バージョンでは動かなかった。 # "<>" にしたら動いてくれた。 root.mainloop()