我使用UndoManager爲我的JTextPane添加撤消和重做功能。但是,每次輸入文本時都會保存文本,因此它會丟棄最後一個字母。我怎樣才能讓它回到最後的話?JTextPane撤銷並重做整個單詞
1
A
回答
2
http://java-sl.com/tip_merge_undo_edits.html這就是這種合併編輯的一個例子。
1
使用UndoableEdit#addEdit()
。如果您在撤消堆棧上將非空白編輯粘貼在一起(通過此方法吸收對方)並進行空白編輯,則下一個撤銷將作用於最後一個工作或最後一個空白間隔,這正是您想要的。
相關問題
- 1. QLineEdit撤銷/重做功能干擾全局撤銷/重做
- 2. 申請撤銷重做上
- 3. 在WPF中撤銷/重做?
- 4. 實現撤銷/重做
- 5. 撤銷/重做+保存
- 6. 撤銷/重做在JavaScript
- 7. ICSharpCode.TextEditor撤銷/重做狀態
- 8. 在單個撤銷/重做命令中加入多個編輯
- 9. 重置撤銷/重做陣列iOS
- 10. 撤銷已經推送並重做合併的git合併
- 11. 一個簡單的撤銷/重做系統的C#POCOs
- 12. tinyMCE禁用撤銷/重做功能
- 13. 收聽撤銷/重做事件contenteditable div
- 14. 撤銷重做與實體框架
- 15. 檢查有撤銷/重做主幹undo
- 16. 撤銷/重做紀念圖案c#
- 17. 使用MemberwiseClone實現撤銷/重做
- 18. Fabric.js中的撤銷 - 重做功能
- 19. 實現撤銷/重做標籤JEditorPanes
- 20. C#撤銷/重做樹木和線程
- 21. 在MVC中實現撤銷/重做
- 22. 在Eclipse E4中撤銷重做
- 23. InkCanvas的撤銷/重做命令堆棧
- 24. 使用撤銷和重做JTextArea
- 25. 在TextArea中實現撤銷/重做
- 26. 撤銷/重做用於iOS的
- 27. 使用鏈接列表撤銷/重做
- 28. 在jquery中撤銷/重做插件
- 29. 草案JS Modifier.ReplaceText撤銷/重做錯誤
- 30. React Native編程撤銷/重做
謝謝!順便說一句,你的網站很棒。 – Jutanium 2012-08-06 15:30:39
一個問題...當用戶高亮顯示的東西,刪除,出現這種情況:'javax.swing.text.BadLocationException:無效的位置 \t在javax.swing.text.GapContent.getChars(GapContent.java:172) \t在javax.swing.text.GapContent.getString(GapContent.java:150) \t在javax.swing.text.AbstractDocument.getText(AbstractDocument.java:757) \t在UndoManager.undoableEditHappened(UndoManager.java:24)'和等等。 – Jutanium 2012-08-08 15:25:09
只有在用戶突出顯示並刪除文本開頭或結尾附近的內容時纔會發生。 – Jutanium 2012-08-08 15:44:00