VBでリドゥ(やり直し)をするには?

タグの編集
投稿者 winvis  (学生) 投稿日時 2009/11/6 04:14:51
VB2008です
テキストエディタを、作っていますが
アンドゥ(元に戻す)は、Textbox1.undoで、実装できたのですが
リドゥは、どうすればいいのですか?
参考になるサイトとか、教えてください
投稿者 魔界の仮面弁士  (社会人) 投稿日時 2009/11/6 05:11:25
この場合の リドゥ とは、
 ・直前の操作の繰り返し
 ・アンドゥ操作の取り消し
のどちらの意味でしょうか?

後者の意味だとすれば、TextBox1.Undo() の実行後に、もう一度 TextBox1.Undo() すれば OK です。
前者の意味だとすると、そうした機能は用意されていません。


ちなみに、(TextBox ではなく)RichTextBox を使っていた場合には、
Undo メソッドと Redo メソッドの両方が実装されています。こちらを使うのも手かと。
投稿者 KOBA789  (中学生) 投稿日時 2009/11/11 08:46:57
TextBoxにはそのような機能はありません。
RichTextBoxであれば利用できますが、シンプルなエディタを作る場合は利用をお勧めできません。
なぜなら無駄にメモリー消費が多いからです。
高機能なエディタなどに実装されているような無限アンドゥ&リドゥは自力でコードを書く必要があります。
投稿者 winvis  (学生) 投稿日時 2009/11/12 02:28:12
回答ありがとうございます
アンドゥの取り消し操作なので、
textbox1.undo
を、もう一回行うようにします