2

元に戻す/やり直す/繰り返す機能をアプリケーションに追加する任務を負っています。SwingのUndoManagerが使えるか、現在調査中です。

通常の取り消しおよびやり直しボタンとは別に、複数の編集を一度に取り消しまたはやり直し (MS Office のようなドロップダウン UI)、選択した編集を繰り返す機能を提供する必要があります。

複数の取り消しとやり直しに UndoManager を使用できると思います。複数の取り消しとやり直しのメソッドを提供します。UI を構築するために、UndoManager を拡張して保持している編集内容を公開できます。

ただし、選択した操作を繰り返すために UndoManager を使用できるかどうかはわかりません。私が最初に考えたのは、UndoManager を拡張し、repeat(edit) メソッドを追加することでした。このメソッドは、編集を複製またはコピーし、コピーをやり直してから、そのコピーを元に戻すスタックの一番上に配置します。Clonable が実装されている場合にのみ、編集が繰り返し可能になります。

これは合理的に思えますか?より良い解決策はありますか?UndoManager の代わりに自分で作成する必要がありますか? 前もって感謝します。

4

2 に答える 2

5

これが役立つことを願っています http://java-sl.com/tip_merge_undo_edits.html

于 2012-09-10T12:29:05.230 に答える
0

UndoManager は、元に戻す/やり直し操作を無制限にサポートします。ドキュメントを見る

最後の編集が既にそこにあるため、繰り返しのサポートを追加するために UndoManager を拡張することは合理的だと思います。

于 2012-09-10T17:35:14.397 に答える