文書番号: 98598
最終更新日: 2003/07/21
void CMyFormView::OnInitialUpdate() { CFormView::OnInitialUpdate(); GetParentFrame()->RecalcLayout(); ResizeParentToFit(); }ResizeParentToFit() 関数では、ユーザーによるメイン フレーム ウィンドウのサイズ変更を抑制できません。(必要に応じてスクロールバー表示されます) フォーム ビューの親ウィンドウであるフレーム ウィンドウのスタイルを変更するには、CMainFrame クラスの PreCreateWindow() 関数をオーバーライドします。(Visual C++ 4.0 以降ではスケルトンの状態でオーバーライドされています。)ウィンドウ サイズの変更を抑制したい場合を例にすると、以下のコードになります。
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT &cs) { cs.style &= ~WS_THICKFRAME; return CFrameWnd::PreCreateWindow(cs); }
void CMDIFormView::OnInitialUpdate() { CFormView::OnInitialUpdate(); ResizeParentToFit(); }ResizeParentToFit() 関数のデフォルト引数を変更すると、SDI アプリケーションと同様の現象が発生するうえ、子ウィンドウのサイズが大きくなりすぎて MDI メイン フレームや画面全体に収まらなくなることがあります。
void CMyForm::OnClickedButton1() { PostMessage(WM_COMMAND, ID_FILE_CLOSE); }補足: IsModified() 関数の戻り値が 0 以外の場合ファイル保存の確認を促されます。
Additional query words: kbfasttips
Keywords: KBHOWTO VC10 VC15 VC20 VC40 VC41 VC42 VC4x VC50 KB98598
Technology: kbAudDeveloper kbMFC kbvc100 kbvc150 kbVC151 kbVC152 kbVC16bitSearch kbVC200 kbVC210 kbVC32bitSearch kbVC500 kbVC500Search kbVC600 kbVCsearch