Tkinter Text:使用双击选择的单词调用自定义函数

Tkinter Text: calling a custom function with the word selected by double-click

当用户双击文本小部件中的单词时,将调用一些内部回调,从而选择一个单词。我想对那个词做一些额外的任务。我怎样才能做到这一点?天真的想法是将我自己的回调绑定到双击。它没有工作,因为错误的优先级:我的回调首先执行,在选择单词之前,然后调用文本回调。 我该如何解决?

一个想法是检索现有回调的句柄并在以下之后重用它:

actual_callback = **<how can I get this handle?>**    
text.bind("<Double-Button-1>", my_callback)

那么我的回调直接写成这样:

def my_callback(event):
    actual_callback(event) # this will select the word
    w = text.selection_get()
    do_something(w)

请帮助以这种方式完成它,或者随意提出实现我最初目标的更好方法。

简单的答案是在 运行 回调之前稍等片刻。

text.bind("<Double-Button-1>", lambda e: text.after(2, my_callback, e)) # wait 2 ms before running callback