CDocument::OnNewDocument

仮想 BOOL OnNewDocument ( );

戻り値

0 以外の値は、ドキュメントが正常に初期化されている場合;そうでなければ 0。

解説

ファイルのコマンドの一部として、フレームワークによって呼び出されます。この関数の既定の実装は、このドキュメント空ことを確認して、新しいドキュメントをマークする、 DeleteContentsメンバー関数を呼び出します。新しい文書のデータ構造を初期化するには、この関数をオーバーライドします。あなたのオーバーライドからこの関数の基本クラス バージョンを呼び出す必要があります。

ユーザー ファイルのコマンド、SDI アプリケーションの場合、フレームワークはこの関数を使用してを新しく作成するのではなく、既存のドキュメントを再初期化します。ユーザー ファイルを複数のドキュメント インターフェイス (MDI) アプリケーションの場合、フレームワークたびに新しいドキュメントを作成し、それを初期化するには、この関数を呼び出します。この関数ではなく、コンス トラクター、SDI アプリケーションでは [ファイル] で、初期化コードを配置する必要があります。

//代替メソッドの次の例を示します//ドキュメント オブジェクトを初期化します。//方法 1: MDI アプリケーションでは、するが最も簡単・初期化はドキュメント constructor.nbsp で;フレームワーク ・ ・ ファイルまたはファイルを開くは常に新しいドキュメント オブジェクトを作成します。CMyDoc::CMyDoc(){//ここの MDI ドキュメントの初期化を行います。// ...}//方法 2: SDI または MDI アプリケーションでは、すべての初期化を行う//がある場合の OnNewDocument のオーバーライド//ファイルの保存時に、初期化を効果的に保存//とシリアル経由でファイルを開くに完全に復元されました。BOOL CMyDoc::OnNewDocument(){if (!。CDocument::OnNewDocument(&))FALSE を返す;//ここに新しい文書の初期化を行います。TRUE を返す;}//方法 3: 文書の初期化ではない場合//効果的に保存、シリアル化中にファイルを保存して復元//とファイルを開く)、初期化を単一の実装・機能 (この例では InitMyDocument をという名前)。呼び出す、//両方のオーバーライドから初期化関数を共有//OnNewDocument と OnOpenDocument。BOOL CMyDoc::OnNewDocument(){if (!。CDocument::OnNewDocument())FALSE を返す;InitMyDocument();//あなたの共有初期化関数を呼び出す・新しいドキュメント オブジェクトに追加の初期化が必要な場合・ ・必要のないドキュメントがファイルを開く] で、逆シリアル化//ここでは、追加の初期化を実行します。TRUE を返す;}

CDocument 概要|nbsp;クラス メンバー |階層図(&N)

参照特価;CDocument::CDocumentCDocument::DeleteContentsCDocument::OnCloseDocumentCDocument::OnOpenDocumentCDocument::OnSaveDocument(&N)

Index