VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2003/07/10(Thu) 17:57
投稿者Say
Eメール
URL
タイトルRe: MsFlexGridでのUndo

> SendMessage API関数とWM_UNDOメッセージで、試したのですが、
> うまくいきませんでした。MsFlexGridには、無効なんでしょうか?

ヘルプ(Platform SDK)にあるように、
引用-------------------------------
An application sends a WM_UNDO message to an edit control to undo the
last operation. When this message is sent to an edit control,
the previously deleted text is restored or the previously added text is deleted.
-------------------------------引用おわり

> 何か方法をよろしくお願いします。
1回Undoでいいなら、
いちばん簡単なのは、Gridをもう1つ隠し持っていて、
オペレーションの度に切り替えながら使うことでしょう。

複数Undoしようとすると、回数分Gridが必要になり、
メモリをバカ食いしますので、非現実的ですから、
オペレーション時に

「オペレーション内容」
「オペレーション位置」
「オペレーション前データ」
「オペレーション後データ」

を履歴として保存しておけば、
UnDo,ReDo可能です。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -