none
ドッキングウィンドウがドッキングしている場合のメインフレームのクライアント領域の取得 RRS feed

  • 質問

  • メインフレームの中に複数のドッキングウィンドウを配置したプログラムを作っています。
    (VisualStudio風で、子ウィンドウはタブ付きでない)

    複数の子ウィンドウをメインフレームの中の表示可能領域に自由に配置したいのですが、表示可能領域を簡単に取得する方法はあるのでしょうか?
    (ウィンドウを並べて表示(CMDIFrameWnd::MDITile())はどうやって実現しているのかな?)

    ドッキングウィンドウはCDockablePaneの派生クラスを使用しています。

    ---
    VisualC++2008、MFC使用
    2010年7月15日 6:09

すべての返信

  • VS2008(SP1)にて

    CMDIFrameWnd(CMainFrame)のメンバ変数 m_dockManagerを利用

    //////////////////////////////////////////////////
    CRect rec;  //CMainFrameのクライアント領域座標で取得

    m_dockManager.GetClientAreaBounds(rec);
    //////////////////////////////////////////////////

    参考
    http://msdn.microsoft.com/ja-jp/library/cc702073.aspx

     

    2010年7月15日 8:45
  • こんにちは、grgrq さん。

    ご質問の件、その後いかがでしょうか。
    yominet さんからのアドバイスはもう確認されましたか?

    下記に同じご質問をされていらっしゃるかと思います。他の方にもより多くの情報を確認できるかと思いますので、リンクさせていただきますね。

    http://soudan1.biglobe.ne.jp/qa6040126.html

    確認された結果など分かりましたら、是非お知らせくださいね。お待ちしています。それでは。
                                                  
    マイクロソフト株式会社 フォーラム オペレーター 山本 春海

    2010年7月27日 7:00