プログラム側からの入力を、アンドゥバッファに入れるには?

解決


たかみちえ  URL  2002-09-08 00:38:01  No: 1456

TRichEditで、ソフトの中から挿入した文章などの入力を、
アンドゥで取り消せるようにするにはどうすればいいんでしょうか?
アンドゥは、TRichEditに元からついているものを使っています。

  前にどこかで読んだような気もするのですけど…。
ごめんなさい、忘れてしまいました。


にしの  2002-09-08 02:09:59  No: 1457

SelTextで挿入していますか?
SelTextの実体は、EM_REPLACESELメッセージです。
これの、wParamの値が、0固定になっています。
本当は、wParamは fCanUndo = (BOOL)wParam ですので、

挿入の部分が、
RichEdit1.SelText := strtmp;
ならば、
RichEdit1.Perform(EM_REPLACESEL, 1, Longint(PChar(strtmp)));
に置き換えればUndoできます。


たかみちえ  URL  2002-09-08 02:17:30  No: 1458

ほえー、そうなのですかぁ…。

  おきかえ大変そうですけど、何とかなりそうです。
ありがとうございました。


※返信する前に利用規約をご確認ください。








  このエントリーをはてなブックマークに追加