擅长:python、mysql、java
<p>furas的答案很好,但仍然不能完美地模拟windows的Ctrl+a行为。事件仅在释放“a”键后激发,但事件应在按“a”键时激发。在</p>
<p>从<a href="https://stackoverflow.com/questions/13066773/python-tkinter-stopping-event-propagation-in-text-widgets-tags">Python tkinter: stopping event propagation in text widgets tags</a>开始,停止事件传播是我们需要的。返回“break”将停止以下事件破坏ctrl+a行为,并允许我们缩短绑定到“<;Control-a>;”</p>
<pre class="lang-py prettyprint-override"><code>def callback(event):
# select text
event.widget.select_range(0, 'end')
# move cursor to the end
event.widget.icursor('end')
#stop propagation
return 'break'
root = tk.Tk()
e = tk.Entry(root)
e.pack()
e.bind('<Control-a>', callback)
root.mainloop()
</code></pre>