Childフォームの破棄後のタイミング

解決


助平  2006-12-20 19:45:26  No: 24318

MDIアプリケーションで、Childの×ボタンで自殺(FormCloseでAction=caFree)したとき、
MainForm側で、Childが減ったことを知るタイミングが知りたいです。

Child.OnDestroy では、Screen.RemoveForm されていないので、MDIChildCountは、
死にかけのChildを含んでいる状態。
TScreenには、OnActiveControlChange、OnActiveFormChangeしかなく、
フォームの削除のタイミングは拾うことができないっぽい。

話が前後しますが、やりたいのはMDIアプリケーションで、Childは決まった数の
決まった種類しか表示しません。
このとき、メインフォーム側に、ChildのOn/Offボタンを表示させ、表示中は
ボタンダウン、非表示になったときはボタンアップ状態にしたいのです。

なにかいいアイディアはないでしょうか?
もしかして、Application.OnIdleで判定するのは、妥当な線?


助平  2006-12-20 20:36:29  No: 24319

FormのNotificationで、Operation = opRemove のとき、
ボタンアップにするようにしました。

解決としておきますが、『Childの自決時に、Parent側で死亡を知るタイミング』について、
『こんなふうにしています』というのがあれば教えてください。
お勉強させていただきます。


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

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






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