ドキュメントとビューの初期化
ドキュメントは、2 つの異なる方法で作成されます。そのため、ドキュメント クラスは両方の方法をサポートする必要があります。 1 つ目の方法では、ユーザーは [ファイル] の [新規] コマンドを使用して、新しい空のドキュメントを作成できます。 その場合は、CDocument クラスの OnNewDocument メンバー関数のオーバーライドで、ドキュメントを初期化します。 2 つ目の方法では、ユーザーは [ファイル] メニューの [開く] コマンドを使用して、新しいドキュメントを作成できます。その内容は、ファイルから読み取られます。 その場合は、CDocument
クラスの OnOpenDocument メンバー関数のオーバーライドで、ドキュメントを初期化します。 両方の初期化が同じ場合は、両方のオーバーライドから共通のメンバー関数を呼び出すか、OnOpenDocument
が OnNewDocument
を呼び出してクリーンなドキュメントを初期化してから、開く操作を完了することができます。
ビューは、ドキュメントの作成後に作成されます。 ビューの初期化に最適なタイミングは、フレームワークによってドキュメント、フレーム ウィンドウ、およびビューが作成された後です。 ビューを初期化するには、CView の OnInitialUpdate メンバー関数をオーバーライドします。 ドキュメントが変更されるたびに何かを再初期化または調整する必要がある場合は、OnUpdate をオーバーライドできます。