其他语言

位置:IT落伍者 >> 其他语言 >> 浏览文章

DELPHI基础教程:对象链接与嵌入(二)[4]


发布日期:2022年01月02日
 
DELPHI基础教程:对象链接与嵌入(二)[4]

自动化另一程序

每个服务器在系统注册中有一个叫ProgID的关键定主要用以控制器辨识服务器任何控制器可以用ProgID号来创建OLE对象实例例程AutoForm是控制器程序它在其主窗体创建了OLE对象实例

procedure TMainFormFormCreate(Sender : TObject)

begin

try

MemoEdit := CreateOleObject(MemoEditApplication

except

MessageDlg(

An instance of the MemoEdit ApplicationOLE Automation Class could

not be createdMake sure that the MemoEdit application has been registered

using a MemoEdit|regservercommand line

mtError[mbok]

Halt;

end;

end;

控制器创建了OLE自动化对象实例后可对其进行操纵OLE自动对象包括属性和方法虽然OLE自动化对象与面向对象Pascal中的对象不是同一概念但Delphi允许使用与类似的语法对OLE对象的方法进行调用

AutoForm的很多过程引用了OLE自动化对象的方法

procedure TMainFormTileButtonClick(Sender : Tobject)

begin

MemoEditTileWindow;

end;

其中TileWindows是OLE对象TMemoApp中定义的方法

AutoForm还通过TMemoApp的NewMemo方法获得了对服务器内部OLE对象TMemoDoc 的引用

procedure TMainFormCreateButtonClick(Sender : TObject)

var

I : Integer;

begin

CloseMemo

for I := to do Memos[] := MemoEditNewMemo;

end;

其中NewMemo在MemoAuto单元中定义如下

function IMemoAppNewMemo : Variant;

begin

Result := MainFormCreateMemo( OleObject;

end;

控制器在获得服务器的内部OLE对象后可以引用其方法

procedure TMainFormAddTextButtonClick(SenderTObject)

var

I : Integer;

begin

for I := to do

if not var IsEmpty(Memo[I]) then

Memo[I]Insert{This text was added through OLE Automation##

end;

Insert是TMemoDoc中定义的方法用以在子窗体中插入字符串

返回目录DELPHI基础教程

编辑推荐

Java程序设计培训视频教程

JEE高级框架实战培训视频教程

Visual C++音频/视频技术开发与实战

Oracle索引技术

ORACLEG数据库开发优化指南

Java程序性能优化让你的Java程序更快更稳定

C嵌入式编程设计模式

Android游戏开发实践指南

[] [] [] []

               

上一篇:DELPHI基础教程:对象链接与嵌入(一)[1]

下一篇:Eclipse下C/C++环境搭建