擅长:python、mysql、java
<p>类似的例子太多了</p>
<pre><code>import tkinter as tk
def callback(event):
print('e.get():', e.get())
# or more universal
print('event.widget.get():', event.widget.get())
# select text after 50ms
root.after(50, select_all, event.widget)
def select_all(widget):
# select text
widget.select_range(0, 'end')
# move cursor to the end
widget.icursor('end')
root = tk.Tk()
e = tk.Entry(root)
e.pack()
e.bind('<Control-a>', callback)
root.mainloop()
</code></pre>
<p><code>bind</code>需要没有<code>()</code>和参数(回调)的文件名。但是<code>bind</code>总是用一个参数<code>event</code>来执行这个函数,这个参数允许访问执行这个函数的条目<code>event.widget</code>,这样你就可以在许多不同的条目中使用它了。最后,<code>Entry</code>有{<cd7>}来获取所有文本。在</p>
<hr/>
<p><strong>编辑:</strong></p>
<p>因为释放键后<code><Control-a></code>选择被移除,所以我使用<code>after()</code>在50ms后执行选择,它选择所有文本(但它将光标移到开始处)并将光标移到末尾。(见上述代码)</p>
<hr/>
<p><strong>编辑:</strong></p>
<p>以前我找不到与<code>Release</code>的正确组合,但它必须是<code><Control-KeyRelease-a></code>,现在它不需要<code>after()</code></p>
^{pr2}$