MDIDOCVW サンプル : ドキュメント/ビュー アーキテクチャを使用する MDI
更新 : 2007 年 11 月
MDIDOCVW サンプルでは、MFC のマルチ ドキュメント インターフェイス (MDI: Multiple-Document Interface) サポートと、ドキュメント/ビュー アーキテクチャを使用しています。このサンプルには 2 種類のドキュメントが含まれています。Hello (ビューに文字列を表示する) と Bounce (ビューにはずむカラー ボールを表示する) です。また、MDIDOCVW では、Microsoft Windows タイマ、CColorDialog、CBitmap、およびウィンドウの既定のカーソルの変更についても示します。
MDIDOCVW サンプルには、2 種類の MDI 子ウィンドウを持つ親ウィンドウがあります。子ウィンドウのうち、[Bounce] ウィンドウははずむボールを表示し、[Hello] ウィンドウは、"Hello, World!" というテキストを表示します。
ドキュメント/ビュー アーキテクチャを含まない MDI サポートを使用するサンプルについては、「MDI サンプル : ドキュメント/ビュー アーキテクチャを使用しない MDI」を参照してください。
セキュリティに関するメモ : |
---|
このサンプル コードは概念を示す目的で提供されているものです。必ずしも最も安全なコーディング手法に従っているわけではないので、アプリケーションまたは Web サイトでは使用しないでください。Microsoft は、サンプル コードが意図しない目的で使用された場合に、付随的または間接的な損害について責任を負いません。 |
サンプルとそのインストール手順を取得するには
Visual Studio で、[ヘルプ] メニューの [サンプル] をクリックします。
詳細については、「サンプル ファイルの格納場所」を参照してください。
使用できるサンプルの最新バージョンと完全な一覧については、オンラインの Visual Studio 2008 Samples のページを参照してください。
サンプルは、コンピュータのハード ディスク上にもあります。既定では、サンプルおよび Readme ファイルは、\Program Files\Visual Studio 9.0\Samples\ の下のフォルダにコピーされます。Visual Studio Express Edition の場合、すべてのサンプルはオンライン上にあります。
サンプルのビルドと実行
MDIDOCVW サンプルをビルドおよび実行するには
ソリューション mdi.sln を開きます。
[ビルド] メニューの [ビルド] をクリックします。
[デバッグ] メニューの [デバッグなしで開始] をクリックします。
[File] メニューの [New Bounce] または [New Hello] をクリックして、新しい MDI 子ウィンドウを作成します。どちらの MDI 子ウィンドウも、ウィンドウがアクティブなときに表示するメニューを決定できます。両方のウィンドウに [Color] メニューがあります。このメニューで色を選択すると、はずむボールや Hello テキストの色が更新されます。[Custom] をクリックすると、[Color] ダイアログ ボックスが表示されます。このダイアログ ボックスでは、作成した色を選択できます。
[Bounce] ウィンドウには [Speed] メニューもあります。ここでは、ボールが画面上で動く速度を指定できます。
ツール バーにはほとんどのメニュー コマンドが実装されています。さらに、5 つの基本色のチェック ボックス ボタンも実装されています。
既定のカーソルの変更
CBounceView と CHelloView は Create をオーバーライドしますが、フレームワークの MDI サポートを利用するためにオーバーライドする必要はありません。CBounceView クラスに含まれる Create のオーバーライドでは、既定のカーソルの変更方法を示しています。ウィンドウの既定のカーソルを変更するには、AfxRegisterWndClass を呼び出して新しい WNDCLASS を登録し、Create の呼び出し時に WNDCLASS の名前を渡します。
キーワード
このサンプルでは、次のキーワードを使用します。
AfxRegisterWndClass; CBitmap::CreateCompatibleBitmap; CCmdUI::SetCheck; CColorDialog::DoModal; CColorDialog::GetColor; CDC::BitBlt; CDC::CreateCompatibleDC; CDC::DeleteDC; CDC::DrawText; CDC::Ellipse; CDC::FillRect; CDC::GetDeviceCaps; CDC::SelectObject; CDC::SetBkColor; CDC::SetTextColor; CFrameWnd::LoadFrame; CFrameWnd::rectDefault; CGdiObject::DeleteObject; CMDIChildWnd::Create; CWinApp::InitInstance; CWnd::DestroyWindow; CWnd::GetClientRect; CWnd::GetCurrentMessage; CWnd::GetDC; CWnd::KillTimer; CWnd::MessageBox; CWnd::OnCreate; CWnd::OnSize; CWnd::OnTimer; CWnd::ReleaseDC; CWnd::SetTimer; CWnd::ShowWindow; CWnd::UpdateWindow; GetSysColor; LOWORD; RGB; max; min
メモ : |
---|
このサンプルを含む一部のサンプルには、Visual C++ のウィザード、ライブラリ、およびコンパイラの変更が反映されていませんが、必要なタスクを実行する方法は示されています。 |