分割バーの位置にダイアログの幅を合わせたいです。

[戻る]
@カフェ 2005/05/27(金) 21:08:34
お初で投稿致します。

現在、MFCのクラスウィザードを使用して作成した
分割ウィンドウを使用して開発を行っています。
画面左がわには検索機能として、C
分割バーの位置を取得して、CFormViewにダイアログを作成しています。

そこで、質問なのですが、画面中央の分割バーの位置にダイアログの幅を合わせたいので
すが、どうすればよいのかわかりません。
まず、分割バーの位置を取得する方法も知りません。
もし取得できるのであれば、その位置に合わせることができるのでしょうか。

MFC VC++6.0 WinXP SDI

iijima 2005/05/28(土) 17:31:57
分割バーの位置を直接取得する関数はないようです。
ペイン(分割された区画上のウィンドウ)の矩形領域を取得して、その位置、寸法から
ダイアログボックスを表示すべき位置、寸法を計算し、そこに移動させれば良いです。
以下のような関数を使うことになるでしょう。

CSplitterWnd::GetPane
CWnd::GetWindowRect か CWnd::GetClientRect
CWnd::MoveWindow か CWnd::SetWindowPos

古いスレッドには追加発言できません。