Шаг 189 - Приложение на основе HTMLVIEW

Создаем приложение MFC AppWizard на основе одного окна SDI и в шаге 6 базовый класс Base Class надо выбрать CHtmlView и нажимаем Finish. Если Вы посмотрите код, то увидите в функции CTestHTMLView::OnInitialUpdate следующий код

void CTestHTMLView::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.microsoft.com/visualc/"),NULL,NULL);
}

Этот код при запуске ищет страницу в Internet. Вы можете либо сами указать страницу в интернете либо создать локальную страницу в ресурсах, с которой и будет производиться старт системы. Эту страницу тоже можно разметить в ресурсах. Для этого перейдите на вкладку ресурсы и выберите Insert Resource.

189_1.gif (5178 b)

В разделе ресурсов появится HTML раздел, в котором будет HTML документ и его идентификатор. Давайте создадим простой документ.

<html>
<p> Hello
</html>

Для загрузки в HTMLVIEW страницы из ресурсов есть специальная функция LoadFromResource. Вот она.

BOOL LoadFromResource( LPCTSTR lpszResource );
BOOL LoadFromResource( UINT nRes );

И реализуется это в той же функции OnInitialUpdate.

void CTestHTMLView::OnInitialUpdate()
{
	CHtmlView::OnInitialUpdate();
    	LoadFromResource(IDR_HTML1);
}

Теперь при старте приложения будет загружаться страница из ресурсов. Но при работе в реальной сети часто возникает ситуация, когда загрузка страницы производится долго и должен быть механизм, который позволит определить то, что загрузка документа закончена. Такая функция есть и она виртуальная OnDocumentComplete, если Вы ее перегрузите, то она будет выглядеть так.

void CTestHTMLView::OnDocumentComplete(LPCTSTR lpszURL) 
{
	// TODO: Add your specialized code here and/or call the base class
	
	CHtmlView::OnDocumentComplete(lpszURL);
}

Сам класс реализует практически все функции по навигации такие как GoBack, GoForward и так далее. Вам нужно только привязать их к панели инструментов или пунктам меню.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 18.05.2000