Доступ к Microsoft Office: интерфейс Word.Basic, модель объектов, интерфейс автоматизации


Главное достоинство технологии OLE Automation состоит в том, что это общепринятый стандарт и с его помощью можно интегрировать приложения Delphi с другими программами. Типичный пример — интеграция с офисными программами, такими как WinWord и Excel или со специальными программами, такими как 0040 СУБД Oracle, CRAXDRT Crystal Reports и т. п.

Следующий пример иллюстрирует вызов метода Automation. Функция CreateOleObject, определенная в модуле ComObj, возвращает ссылку Dispatch объекта Automation и совместима с назначением с Variant Word.

С использованием интерфейса Word.Basic

Var OV: OleVariant;
Begin
OV:=CreateOleObject(‘Word.Basic’); // Получаем доступ к ProglD

OV.Insert(‘Это — первая строка’#13);
ОV.Insert(‘Этo — вторая строка’#13);

OV.FileSaveAs(‘C:\Temp\Test.Txt’, 3);
End;

Через программный интерфейс:

OV:=CreateOleObject(‘Word.Application’);
OV.Visible:=true;
OV.Document.Add;
OV.Selection.FontName:=’ Times New Roman’
OV.Insert(‘Это — первая строка’#13);
ОV.Insert(‘Этo — вторая строка’#13);

С помощью интерфейса автоматизации

Uses Exel_TLB;
Var AppXL: Excel_TLB.Application;
Begin
AppXL:= Excel_TLB.Application.Create;

Доступ к OLE-объектам из приложений Microsoft Office
Обратиться к созданному вами объекту в составе OLE-сервера достаточно просто. Для этого необходимо:
• Поместить в документ (*.Doc или *.Xls) кнопку, выполнив команды: Вид\Панели инструментов\Элементы управления
• Дважды щелкнуть по кнопке и в открывшемся окне Visual Basic fоr Word следует ввести код обработчика, вызывающего объект:

Private Sub CommandButton_Click()
Dim DelphiObject As Object;
SetDelphiObject=CreateObject(|ProjectlLib.FirstServer|);
ActiveDocument.Paragraph(l).Range.InsertAfter (DelphiObject.<мeтoд>);
End Sub


Комментарии запрещены.




Статистика