皆様お世話になります。
現在、VB2005 Express、WinXP SP2の環境で、MDIフォーム使用アプリを
製作中で、複数の子フォームのうち、特定のものがVisibleの場合に
その特定の子フォーム(フォームAとします)を最前面に表示したままで、
他の子フォーム(フォームB、C、Dとします)の操作を可能にしたいと思っています。
(Aは、B、C、Dの上に重なるような表示が前提)
A_LostFocusやA_Deactivate、B_Paint、C_Paint、D_Paintイベントに
BringToFrontメソッドを埋め込む事で、フォームがチラつくものの、
ある程度は前面表示出来ているようなのですが、どうやらAを移動させて、
B、C、Dの表示領域からはみ出ると、その時点から何故かBringToFrontが
効かなくなってしまうようです。
(ちなみにA_PaintにもBringToFrontを入れてみたら無限ループしました(汗))
一応、SetWindowPosあたりも試しては みたんですが、やはりダメでした。
何かよい方法は ありますでしょうか? 皆様の知恵をお貸しください。
ツイート | ![]() |