Опубликован: 17.08.2010 | Доступ: свободный | Студентов: 1000 / 59 | Оценка: 4.11 / 3.89 | Длительность: 29:38:00
Самостоятельная работа 21:

Встраивание возможностей броузера в приложение

< Самостоятельная работа 20 || Самостоятельная работа 21: 123456
Аннотация: Класс CHtmlView. Создание приложения с возможностями броузера. Создание поддержки ввода URL. Редактирование ресурса панели управления. Передача URL броузеру. Отображение текущего значения URL. Переходы GoBack и GoForward. Реализация возможностей перехода через меню. Реализация возможностей перехода через акселераторы. Реализация возможностей перехода через кнопки панели управления. Дополнительные возможности управления браузером. Отображение заголовка текущей Web-страницы в заголовке окна приложения. Настройка приложения на открытие локальных HTML-документов. Подчистка лишних интерфейсов и оформление About.
Файлы к данной лабораторной работе, Вы можете скачать здесь.

Одной из возможностей, которые Microsoft предоставила в своих средствах разработки - использование функциональностей Internet Explorer в качестве интегрированной части любого приложения.

Цель лабораторной работы - познакомиться с вопросами:

  1. Как объектная модель компонентов ActiveX для Internet Explorer ( Internet Explorer ActiveX Object Model ) позволяет интегрировать все компоненты в приложение
  2. Каким образом класс CHtmlView библиотеки MFC инкапсулирует практически все функциональности Internet Explorer
  3. Как обращаться к различным интерфейсам модели компонентных объектов Microsoft ( COM -интерфейсам), доступным в объектной модели ActiveX для Internet Explorer
  4. Как с помощью Visual C++ создать свои интерфейсные классы для COM -интерфейсов, т.е. как вызывать функции COM -интерфейсов из своего приложения
  5. Как создать простой браузер, используя класс CHtmlView и Internet Explorer

Класс CHtmlView

Класс CHtmlView, будучи использован в качестве базового вместо класса CView, позволяет создавать однодокументные или многодокументные приложения с возможность просмотра HTML -документов и другими функциональностями Web -броузера. Класс содержит множество функций, в том числе и навигационных

Некоторые функции класса CHtmlView
Функция Назначение
GoBack() Направляет пользователя на предыдущую Web - страницу
GoForward() Направляет пользователя на последующую Web - страницу
GoHome() Направляет пользователя на начальную страницу броузера Internet Explorer
GoSearch() Направляет пользователя на страницу поиска по Internet
Navigate(LPCTSTR URL) Направляет пользователя на страницу в Internet с указанным адресом URL
Refresh() Заставляет браузер перезагрузить текущую Web - страницу
Stop() Останавливает текущий процесс загрузки
GetLocationURL() Возвращает URL текущей просматриваемой браузером Web - страницы
GetBusy() Возвращает логическое значение, информирующее, занят ли в данный момент браузер загрузкой Web - страницы

Создание приложения с возможностями броузера

Создадим SDI -приложение на базе класса CHtmlView. Добавим в него меню с функциями навигации назад и вперед. Добавим диалог для возможности вводить URL.

Чтобы приложение заработало, необходимо, чтобы на компьютере был установлен Web -браузер Internet Explorer. Обычно при установки IDE Visual C++ на компьютере устанавливается самая последняя версия Internet Explorer. Если разработанное приложение планируется запускать на других компьютерах, то там Internet Explorer также должен быть установлен для успешной работы нашего приложения.

Создание заготовки приложения

  • Выберите папку для размещения проекта
  • Создайте новый проект с именем WebBrowse

  • Заполните вкладки мастера создания приложений так





    Настройки остальных вкладок мастера создания приложений оставьте без изменения. Проследите, чтобы в последней вкладке Generated Classes (Генерируемые классы) для создаваемого мастером класса CWebBrowseView в качестве базового в поле Base class был выбран класс CHtmlView.

  • После нажатия кнопки Finish мастер создаст заготовку приложения
  • Установите режим сборки проекта Solution Configurations в значение Release

  • Постройте проект и убедитесь, что мастер построил заготовку броузера, которую нам предстоит наделить функциональностью

< Самостоятельная работа 20 || Самостоятельная работа 21: 123456
Александр Даниленко
Александр Даниленко
Стоит Windows 8 Pro, Visual Studio 2010 Express Edition .