Enabled=FalseからTrueにする時、Form_Loadが呼び出される?

解決


くびね  2004-05-31 20:52:20  No: 113608  IP: [192.*.*.*]

いくつかフォームが開いていて、その内の、現在使っているフォーム以外は
Enabled=Falseの状態にしているのですが、ボタンを押してFalseをTrueにする
時に、TrueにしたフォームのForm_Loadが呼び出されてしまいます。
呼び出さずに、Enabled = True  にする方法はないでしょうか?
(BV6.0 SP5)

編集    削除
Say  2004-05-31 21:14:24  No: 113609  IP: [192.*.*.*]

通常、
Enabled = False から Enabled = True に変更ただけでは
Form_Loadイベントは発生しません。

もしかして
メモリ上にないFormのプロパティを変更しようとして、
暗黙のLoadが発生してはいませんか?

編集    削除
のん  2004-05-31 21:16:36  No: 113610  IP: [192.*.*.*]

フォームのEnableプロパティの値を変更してもLoadイベントは起きません
Enable=Trueにする前に、そのフォームがUnloadされている可能性があります。

編集    削除
のん  2004-05-31 21:17:08  No: 113611  IP: [192.*.*.*]

被ってしまいました。失礼しました

編集    削除
くびね  2004-05-31 22:07:15  No: 113612  IP: [192.*.*.*]

はい、そのとおりでございました。すみません。
しかし、プログラム上、開いていないフォームにもEnabled=Falseをしているのですが、
その際、LOADされてしまうようです。それでも、LOADされないようにしたいのですが、
何か画期的な方法ってないものでしょうか?
FORMが開いているかどうかだけでも、判断できればいいと思うのですが…。

編集    削除
Say  2004-05-31 22:55:39  No: 113613  IP: [192.*.*.*]

Formがロード済みかどうかは
Formsコレクションを調べればわかります。

また、Load前にEnableを設定したかったら、
デザイン時に設定してください。

編集    削除
くびね  2004-05-31 23:25:51  No: 113614  IP: [192.*.*.*]

ありがとうございます。
解決しました…と思います。

編集    削除