• ベストアンサー

MDI

VC++ 6.0 を使ってメーラーを作っています。 MDIで アドレス帳とメールボックスの2種類の 子ウインドウを出します。  これらの子ウインドウが 最大それぞれ1つだけ表示される ようにしたいのですが、 どうしたらよいのでしょうか?  ヒントをください。

質問者が選んだベストアンサー

  • ベストアンサー
  • mcWalker
  • ベストアンサー率69% (27/39)
回答No.1

それぞれの子ウインドウを開くときには、その違いが分かっているでしょうから、 1.開くとき、SetWindowLong() でウインドウにその種別を記録して   おいて、新規にウインドウを開く度に、   EnumChildWindows() で、記録の種別を調べる。   記録のデータを構造体にして(そのポインタを記録して)おくと、いろいろ記録できて便利。   (閉じるときは解放を忘れないよう) 2.単純な方法は、global 変数にカウンタを設けて、新規に   開くとき、それを見る。 3.これらのウインドウの存在に関連して、メニューがあるなら、   メニューの使用可否を設定するでしょうから、その可否を   調べる。

uyama33
質問者

お礼

ありがとうございます。 2が簡単ですね。

関連するQ&A