如何在Tkinter文本控件中撤销/重做操作?
我想在Python中实现“撤销”(Control-Z)和“重做”(Shift-Control-Z)这两个功能。有没有人知道怎么做?
另外,我还需要选中整个文本小部件的内容,有人知道该怎么操作吗?
1 个回答
2
关于撤销机制,可以查看 Idle 中的 UndoDelegator.py 文件,配合 EditorWindow.py 一起使用。
如果你想选中一个文本框里的所有内容,可以这样做:
# remove previous selection, if any
text_widget.tag_remove(Tkinter.SEL, "1.0", Tkinter.END)
# select all
text_widget.tag_add(Tkinter.SEL, "1.0", Tkinter.END)
# place cursor
text_widget.mark_set(Tkinter.INSERT, Tkinter.END)