Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

VPS в России, Европе и США

Бесплатная поддержка и администрирование

Оплата российскими и международными картами

Спринтхост — хостинг от 129 ₽ в месяц

Бесподобная поддержка, тестовый период 30 дней и домены от 149 ₽

Промокод на 30% кешбэк — CITFORUM

Надежные VPS и выделенные серверы в Нидерландах

Storage VPS, High CPU VPS

Профессиональная техническая поддержка

Домены, SSL сертификаты, VPN

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

2.1 Создание OLE-объектов

Компонент TOleContainer позволяет поместить OLE-объект на поверхности формы. Основные свойства этого компонента: AutoActivate - определяет, каким образом активизируется OLE-объект, OleClassName - имя класса OLE-объекта, содержащегося в контейнере. Основные методы: InsertObjectDialog - выводит стандартную диалоговую панель Object для выбора типа объекта или загрузки его из файла, CreateObject - создает OLE-объект, DestroyObject - уничтожает объект.

Создадим простейший пример использования OleContainer. С этой целью поместим на форму компонент TPanel со свойством Align, равным alClient, на него - компонент TOleContainer, кнопку и главное меню (можно создать в нем один пункт). Панель и меню нужны для отображения инструментальных панелей и меню OLE-серверов, обслуживающих отображаемые в TOleContainer объекты.

орма  с TOleContainer

Рис.7. Форма с TOleContainer

Создадим обработчик события, связанный с нажатием на кнопку:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
OleContainer1->InsertObjectDialog();
}

Запустив приложение и нажав на кнопку, получим диалог для вставки объекта:

Диалог вставки объекта

Рис.8. Диалог вставки объекта

В списке перечислены все OLE-серверы, зарегистрированные на данном компьютере.

Можно выбрать один из них (например, документ Word). Теперь после двойного щелчка на объекте TOleContainer получим на компоненте TPanel инструментальную панель MS Word, главное меню и сам документ.

Активный объект в  OleContainer<

Рис.9. Активный объект в OleContainer

Если тип объекта, включаемого в TOleContainer, известен заранее, можно использовать метод CreateObject:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
OleContainer1->CreateObject("Word.Document",True);
}

Второй параметр этого метода указывает, отображать ли объект внутри OleContainer в виде пиктограммы.

Модифицируем приложение, добавив еще две кнопки с надписями "Свойства" и "Вставка", и создадим соответствующие обработчики событий:

void __fastcall TForm1::Button2Click(TObject *Sender)
{
OleContainer1->ObjectPropertiesDialog();
}
//--------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
OleContainer1->PasteSpecialDialog();
}

Скомпилируем приложение. Добавим какой-нибудь объект в OLEContainer.

Нажав на кнопку "Свойства", получим стандартный диалог с описанием свойств объекта.

Диалог с описанием свойств объекта

Рис.10. Диалог с описанием свойств объекта

Нажав кнопку "Вставить", получим диалог вставки объекта:

Диалог специальной вставки

Рис.11. Диалог специальной вставки

Выбрав тип вставки объекта, можем вставить его в OLEContainer:

Назад | Содержание | Вперед

 

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...