如何解决将文本写入 tkinter 文本小部件重做
我有一个 tkinter 文本小部件,我使用以下代码添加了撤消/重做功能:
self.text = tk.Text(self,maxundo=-1,autoseparators=1,undo=True)
然后我在其中插入了一些字符串:
self.text.insert('insert','Text')
我按下了 Command+Z 和 Command+Shift+Z,
我发现我只能撤消或重做通过按下键盘输入的文本,而不能撤消或重做 text.insert
ed 文本。
所以,我想知道如何让文本小部件撤消使用 insert
方法插入的文本。
感谢您的帮助!
解决方法
您应该在插入字符串前后添加编辑分隔符。
self.text.edit_separator()
self.text.insert('insert','Text')
self.text.edit_separator()
编辑分隔符让 tkinter 知道文本的逻辑块是什么。添加分隔符告诉 tkinter,就撤消而言,您的插入命令应该被视为一个单元。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。