Кент Рейсдорф. BORLAND C++BUILDER. Раздел 4
Кент Рейсдорф. BORLAND C++BUILDER. Страница 442
Для демонстрации возможностей контейнеров OLE в C++Builder включены два приложения: Olemdi (OLE multiple-document interface) и Olesdi (OLE single-document interface). Они показывают, как легко можно внедрять объекты из различных источников в приложения C++Builder.
Для наших целей более важно разобрать приложение Olemdi, поэтому откройте проект Olemdi.так (он расположен в подкаталоге \Exam- ples\Doc\01ectnrs главного каталога C++Builder).
Для запуска Olemdi нажмите клавишу F9. После того, как приложение заработает, щелкните на кнопке Open в его панели инструментов и откройте несколько документов OLE (например, документ Microsoft Word или таблицу Microsoft Excel). На рис. 15.4. показано приложение Olemdi с загруженным документом Word и HTML-файлом.
После загрузки документов OLE вы заметите, что двойной щелчок на них вызывает существенное изменение вида Olemdi. Во время просмотра выбранного документа к Olemdi добавляются меню и панель инструментов исходного приложения. Например, когда вы просматриваете документ Word, в верхней части окна Olemdi появляются панель инструментов и система меню Microsoft Word. Создается впечатление, что загружен сам Word, но в строке заголовка окна по-прежнему написано Olemdi. Если вы затем переключитесь на таблицу Excel, меню и панель инструментов станут такими Microsoft Excel. Поскольку у меня в качестве Web-браузера по умолчанию стоит Netscape Navigator, при просмотре HTML-файлов я увижу меню и панель инструментов Netscape Navigator. Идея внедрения и связывания объектов заключается в том, что вы можете чувствовать себя «как дома» при просмотре «чужих» документов в приложении-контейнере OLE. Объекты OLE несут в себе всю информацию, необходимую для их просмотра и редактирования.