JTextPane 和 UndoManager

JTextPane and UndoManager

为了在 Java 中学习 GUI 编程,我正在使用 Java 开发一个 TextEditor。我在我的编辑器中添加了撤消重做功能以及字体选项。撤消重做功能运行良好,没有任何问题。它们适用于文本更改和字体更改(样式、名称、大小、颜色) 我的问题是我想知道 undomanager 是否已撤消或重做 FontChanges 以便我可以向其添加适当的函数调用。 我唯一的要求是,如果字体更改被撤消或重做,我想采取某些行动。 请帮忙

UndoableEditEvent 有那个信息。

基本代码为:

AbstractDocument.DefaultDocumentEvent event =   (AbstractDocument.DefaultDocumentEvent)e.getEdit();

if  (event.getType().equals(DocumentEvent.EventType.CHANGE))
{
    //  do something
}

或者您可以只使用 DocumentListenerchangedUpdate 文档中的属性更改时将生成事件。