Web ブラウザー形式の MFC アプリケーションの作成

Web ブラウザー スタイルのアプリケーションは、インターネット (HTML やアクティブなドキュメントなど) やイントラネット、およびローカル ファイル システムおよびネットワーク上のフォルダーから情報にアクセスできます。 アプリケーションのビュー クラスを派生 CHtmlViewさせることで、実質的に WebBrowser コントロールを使用してビューを提供することで、アプリケーションを Web ブラウザーにします。

MFC ドキュメント/ビュー アーキテクチャに基づいて Web ブラウザー アプリケーションを作成するには

  1. MFC アプリケーションの作成に関する記事の指示に従ってください。

  2. MFC アプリケーション ウィザードの [アプリケーションの種類] ページで、[ドキュメント/ビュー アーキテクチャ] ボックスが選択されていることを確認します。 (次のいずれかを選択できます。1 つのドキュメントまたは複数のドキュメント。ダイアログ ベースではありません)。

  3. [生成されたクラスの確認] ページで、[基本クラス] ドロップダウン メニューを使用して選択CHtmlViewします。

  4. スケルトン アプリケーションに組み込むその他のオプションを選択します。

  5. [完了] を選択します。

WebBrowser コントロールは、ハイパーリンクと UNIFORM Resource Locator (URL) ナビゲーションを介した Web 参照をサポートします。 コントロールメイン、ユーザーが以前に参照したサイト、フォルダー、ドキュメントを前後に参照できるようにする履歴リストが含まれます。 コントロールは、ナビゲーション、ハイパーリンク、履歴リスト、お気に入り、セキュリティを直接処理します。 アプリケーションでは、WebBrowser コントロールをアクティブなドキュメント コンテナーとして使用して、アクティブなドキュメントをホストすることもできます。 そのため、Microsoft Excel スプレッドシートや Word 文書などの豊富な形式のドキュメントを、WebBrowser コントロール内からその場で開いて編集できます。 WebBrowser コントロールは、任意の ActiveX コントロールをホストできる ActiveX コントロール コンテナーでもあります。

Note

WebBrowser ActiveX コントロール (そのためCHtmlView) は、インターネット エクスプローラー 4.0 以降がインストールされている Windows バージョンで実行されているアプリケーションでのみ使用できます。

単に Microsoft Web ブラウザー コントロールを実装しているため CHtmlView 、印刷のサポートは他 CViewの派生クラスとは同じではありません。 代わりに、WebBrowser コントロールは、プリンターのユーザー インターフェイスと印刷を実装します。 その結果、CHtmlView印刷プレビューはサポートされません。また、フレームワークでは他の MFC アプリケーションで使用できる他の印刷サポート機能 (たとえば、CView::OnBeginPrintingCView::OnPreparePrinting、、CView::OnEndPrinting) は提供されません。

CHtmlView は、Web ブラウザー コントロールのラッパーとして機能し、アプリケーションに Web ページまたは HTML ページへのビューを提供します。 ウィザードでは、ビュー クラス内の OnInitialUpdate 関数のオーバーライドが作成され、Microsoft Visual C++ Web サイトへのナビゲーション リンクが提供されます。

void CWebView::OnInitialUpdate()
{
    CHtmlView::OnInitialUpdate();

    // TODO: This code navigates to a popular spot on the web.
    // Change the code to go where you'd like.
    Navigate2(_T("https://learn.microsoft.com/"),
        NULL,
        NULL);
}

このサイトを独自のサイトに置き換えるか、メンバー関数を LoadFromResource 使用して、ビューの既定のコンテンツとしてプロジェクトのリソース スクリプトに存在する HTML ページを開くことができます。 次に例を示します。

void CWebView::OnInitialUpdate()
{
    CHtmlView::OnInitialUpdate();

    // TODO: This code navigates to a popular spot on the web.
    // Change the code to go where you'd like.
    LoadFromResource(IDR_HTML1);
}

関連項目

MFC サンプル MFCIE
MFC アプリケーション ウィザード
コンパイラとビルドのプロパティの設定
プロパティ ページ
コンパイラとビルドのプロパティの設定