Создание приложения MFC в стиле веб-обозревателя
Обновлен: Ноябрь 2007
Приложение в стиле веб-обозревателя может получать доступ к информации в Интернете (такой как HTML-страницы или активные документы) или в интрасети, а также в папках локальной файловой системы и сетевых папках. Сделав класс представления приложения производным от CHtmlView, вы фактически превращаете приложение в веб-обозреватель, создавая представление с элементом управления WebBrowser.
Создание приложения в стиле веб-обозревателя на основе архитектуры документ/представление MFC
Следуйте указаниям раздела Создание приложения MFC.
На странице Тип приложения мастера приложений MFC убедитесь, что установлен флажок Архитектура документ/представление. (Вы можете выбрать Однодокументное или Многодокументное, но не Диалоговое.)
На странице Обзор созданных классов в раскрывающемся меню Базовый класс выберите CHtmlView.
Установите все остальные параметры, которые необходимы в скелете приложения.
Нажмите кнопку Готово.
Элемент управления WebBrowser поддерживает просмотр веб-страниц с переходом по гиперссылкам и URL-адресам. Элемент управления хранит журнал просмотра, что позволяет пользователю перемещаться вперед и назад по ранее просматривавшимся веб-узлам, папкам и документам. Элемент управления непосредственно обрабатывает перемещение, гиперссылки, журнал просмотра, избранное и безопасность. Приложения могут также использовать элемент управления WebBrowser в качестве контейнера для активных документов. Это позволит открывать документы со сложным форматированием, например электронные таблицы Microsoft Excel или документы Word, и редактировать их непосредственно из элемента управления WebBrowser. Элемент управления WebBrowser является также контейнером для элементов управления ActiveX, и в нем можно размещать любой такой элемент.
Примечание. |
---|
Элемент управления ActiveX WebBrowser (а следовательно, и CHtmlView) доступен только для приложений, работающих под управлением тех версий операционной системы Windows, в которых установлен веб-обозреватель Internet Explorer 4.0, и более поздних версий. |
Поскольку CHtmlView просто реализует элемент управления веб-обозревателя корпорации Майкрософт, поддержка печати в нем осуществляется иначе, чем в других классах, производных от CView. Элемент управления WebBrowser реализует пользовательский интерфейс принтера и печать. Поэтому CHtmlView не поддерживает предварительный просмотр перед печатью, а среда не предоставляет других функций поддержки печати, например CView::OnPreparePrinting, CView::OnBeginPrinting и CView::OnEndPrinting, которые доступны в других приложениях MFC.
CHtmlView действует как оболочка для элемента управления веб-обозревателя, который снабжает приложение представлением веб- или HTML-страницы. Мастер создает переопределение функции OnInitialUpdate в классе представления, предоставляя ссылку для перехода на веб-узел Microsoft Visual C++:
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("http://www.msdn.microsoft.com/vstudio/"),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);
}
См. также
Задачи
Образец MFCIE: демонстрация классов MFC CHtmlView и CReBar