知识大全 对象链接与嵌入(一)[5]

Posted

篇首语:知识是头上的花环,而财产是颈上的枷锁。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 对象链接与嵌入(一)[5]相关的知识,希望对你有一定的参考价值。

DELPHI基础教程:对象链接与嵌入(一)[5]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  BOLEFormat类型定义在BOLEDefs单元中 BOLEMediumCalc函数定义在ToCtrl单元 因此主窗中的interface部分应加入这两个单元

  interface

  use… BOLEDefs ToCtrl

  在粘贴OLE对象前 应用程序必须知道在剪贴板中是否有OLE对象

  PasteSpecialEnabled函数可判断粘贴对话框是否有效 如果剪贴板上有Fmts定义的任何一种格式 PasteSpecialEnable将返回真值 粘贴对话框才能成功地调用 反之调用粘贴对话框将不发生任何事件

  以下代码实现 编辑|粘贴 菜单项的功能

  procedure TOLEObjectForm PasteSpecial Click(Sender: TObject)

  var

  ClipFmt: Word;

  DataHand: THandle;

  Info: Pointer;

  begin

  if PasteSpecialEnabled(Self OLEFrameForm Fmts) then

  if PasteSpecialDlg(Self OLEFrameForm Fmts

  ClipFmt DataHand Info) then

  InitializeOLEObject(Info)

  end;

  只有在粘贴对话框有效时 编辑|粘贴 菜单才有效 以下代码实现此功能

  procedure TOLEObjectForm Edit Click(Sender: TObject)

  begin

  PasteSpecial Enabled := PasteSpecialEnabled(Self OLEFrameForm Fmts)

  end;

   释放OLE对象

  从OLE服务器拖动OLE对象并将其放在OLE应用程序是一种方便的对象链接与嵌入的方法 通过拖放操作 用户不需要使用插入对话框或粘贴对话框来定义OLE对象 而只需用鼠标键从OLE服务器中 抓 住OLE对象 拖至OLE应用程序 松开鼠标键 从而实现OLE对象的插入

   注册OLE释放目标窗体

  为了接收一个释放的OLE对象 必须有一个窗体在Windows中注册成OLE释放目标 用RegisterFormASOLEDropTarget函数可实现此功能

  RegisterFormASOLEDropTarger(Form : TFrom;Const Fmts: array of BOlefrom)

  其中Form是OLE对象的释放目标窗体 在本章例程中 将子窗体传递给Form参数

  Fmts是对象格式的数组 它是BOLEFormat 类型的数组 所有要释放的数据必须用Fmts数组中相应BOLEFormat元素注册

  在本章例程中 注册的Fmts 数组与主窗体OnCreate事件 声明的数组相同 即 联接对象格式和嵌入对象格式 如果想接收更多类型的释放数据 就必须在Fmts数组中加入其它元素 例如应用程序要接收释放的文本 Fmts需加第三个元素 其fmtId 域为CF_TEXT BOLEMedium域为BOLE_MED_HGLOBL

  拖放过程中不需要用BOLEFormat的fmtName fmtResultName域 如果程序只进行拖放操作而不进行对象粘贴 可以不初始化两个域

  在主窗体的OnCreate事件中可调用RegisterFormAsOLEDropTet

  procedure TOLEFrameForm FormCreate(Sender : TObject)

  begin…

  Register FormASOleDropTarget(Self Fmts)

  end;

  返回目录 DELPHI基础教程

       编辑推荐

       Java程序设计培训视频教程

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

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

  Oracle索引技术

  ORACLE G数据库开发优化指南

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

  C嵌入式编程设计模式

  Android游戏开发实践指南

cha138/Article/program/Delphi/201311/25223

相关参考

知识大全 对象链接与嵌入(一)[3]

DELPHI基础教程:对象链接与嵌入(一)[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 对象链接与嵌入(一)[2]

DELPHI基础教程:对象链接与嵌入(一)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 对象链接与嵌入(一)[1]

DELPHI基础教程:对象链接与嵌入(一)[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 对象链接与嵌入(二)[4]

DELPHI基础教程:对象链接与嵌入(二)[4]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 对象链接与嵌入(二)[3]

DELPHI基础教程:对象链接与嵌入(二)[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 对象链接与嵌入(二)[2]

DELPHI基础教程:对象链接与嵌入(二)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 对象链接与嵌入(二)[1]

DELPHI基础教程:对象链接与嵌入(二)[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 链接到外部类

  迄今为止我们见到的内部类好象仅仅是一种名字隐藏以及代码组织方案尽管这些功能非常有用但似乎并不特别引人注目然而我们还忽略了另一个重要的事实创建自己的内部类时那个类的对象同时拥有指向封装对象(这些对象

知识大全 浅谈网页中各种链接引用方法

  在网页中的引用(比如引用cssjsimg等对象)总的来说可以分为以下几种方式  viewsourceprint?<%第一种方法%>  <linkrel=stylesheettyp

知识大全 VB.net与Media Player9.0嵌入

VB.net与MediaPlayer9.0嵌入  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  W