tkinter.dnd --- Drag and drop support¶
Code source : Lib/tkinter/dnd.py
Note
Ceci est expérimental et devrait être obsolète lorsqu'il sera remplacé par le Tk DND.
The tkinter.dnd module provides drag-and-drop support for objects within
a single application, within the same window or between windows. To enable an
object to be dragged, you must create an event binding for it that starts the
drag-and-drop process. Typically, you bind a ButtonPress event to a callback
function that you write (see Bindings and events). The function should
call dnd_start(), where source is the object to be dragged, and event
is the event that invoked the call (the argument to your callback function).
La sélection d'un objet cible se produit comme suit :
Top-down search of the area under the mouse for a target widget:
the target widget should have a callable dnd_accept attribute;
if dnd_accept is not present or returns
None, the search moves to the parent widget;if no target widget is found, the target object is
None.
Call to
<old_target>.dnd_leave(source, event).Call to
<new_target>.dnd_enter(source, event).Call to
<target>.dnd_commit(source, event)to notify of the drop.Call to
<source>.dnd_end(target, event)to signal the end of drag-and-drop.
- class tkinter.dnd.DndHandler(source, event)¶
La classe DndHandler gère les événements de glisser-déposer qui suivent les événements Motion et ButtonRelease à la racine du widget d'événement.
- cancel(event=None)¶
Annule le processus de glisser-déposer.
- finish(event, commit=0)¶
Exécute les fonctions de fin de glisser-déposer.
- on_motion(event)¶
Inspect area below mouse for target objects while a drag is performed.
- on_release(event)¶
Signale la fin de la traînée lorsque le modèle de relâchement est déclenché.
- tkinter.dnd.dnd_start(source, event)¶
Factory function for the drag-and-drop process. Return the
DndHandlerinstance managing the drag, orNoneif a drag could not be started.
Voir aussi