掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
動的フレームの再作成でエラー (ID:22614)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> えーとにえーと 2006/09/02(土) 14:52:57 > >モーダルだからとかモードレスだからという違いではないですね。 >>フォームのインスタンス中から自分を直接Freeすることは出来ません。 >>そのような用途のためにReleaseがあります。 >と書いていある(意識的か無意識か分からんが、この発言が削除されている) >えーとさん、これは正しいの? 正しいです。 ですが、モーダル表示されている場合は、Release でもだめですね。 ですから、一つだけが例外です。 モーダルフォームでは、自殺でも Release は使えない。 ということです。 それ以外は、特にモーダルかモードレスかに関係なく >>そのフォームまたはその子フォームのイベントハンドラ以外からではFreeAndNilやFreeをすることは構いません。 は成り立ちます。 興味深いのは、メインのメッセージループは、Application.Run の中にあって どのフォームにも属してないので、上の一般論が成り立ちます。しかし、モーダル ループは、表示中のモーダルフォームのメソッドなので PostMessage に相当する Release でも、その結果呼び出される Free からの復帰は、モーダルループに 返ってくるので、エラーになることです。 ま、一般にはモーダルなフォームは自殺する必要はないですし、開放するならShowModal を呼び出したあとに開放するといいので、この点を問題視する 必要はないと思いますが。 今回、このスレッドが混乱して長くなったのは、この特殊な例外にこだわった人と わたしのように一般論を支持する人の議論がすれ違っていたんだと思います。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.