cad添加ole对象,ole对象引用没有与ole对象绑定

本文目录一览:

ole控件的对象

VB提供了一个OLE容器控件(在工具箱中),用于容纳“链接”对象或“嵌入”对象,也就是说,可以使用OLE容器控件来插入对象。

当然,也可用其它方法来插入对象。如:通过在工具箱中添加对象的类来插入对象,具体操作步骤为:

①→“工程”菜单/“部件”命令

②→“可插入对象”选项卡

③→想要加入工具箱的类,如:“Microsoft Excel工作表” →“确定”

在使用OLE容器控件插入对象时注意:

(1)创建链接时,链接对象数据被存储在OLE容器控件之外;

创建嵌入对象时,嵌入对象数据和VB应用程序一起被保存在OLE控件之内。

(2)在任何时候,一个OLE容器控件内只能有一个对象。

(3)既可在设计阶段来插入对象(创建链接对象或嵌入对象);也可在程序运行阶段通过代码来创建链接对象或嵌入对象。

(4)通过OLE控件的Display Type属性可控制OLE对象在OLE容器控件中的显示方式:

Display Type :0 → 以“数据映象”方式显示

Display Type :1 → 以“图标”方式显示

一旦建立好一个OLE对象,此对应的OLE对象显示方式将无法改变。

(5)在OLE容器控件中放置对象之前提供该对象的应用程序必须已经在Windows中注册其对象。

1、设计时插入一个“链接”对象

步骤:(1)添加一个“OLE容器控件”到窗体上,屏幕会弹出一个“插入对象”对话框。或在设置好的“OLE容器控件”上右击鼠标,也会弹出“插入对象”对话框。

(2)选择“从文件创建”,再通过“浏览”按钮确定“要链接文件的路径、文件名”: ①C:\lyh\gz.xls\Excel工作表

②C:\win98\a.bmp\BMP图象

(3)单击“插入”按钮→返回“插入对象”对话框。

(4)选中“链接”复选框→“确定”。

按照以上步骤,就建立了一个链接对象。

此时,OLE控件本身则保存与对象链接有关的信息。如:提供链接对象的应用程序名、链接文件名、以及该链接对象的“数据影像”等,其对应的OLE控件属性分别是:对象类型(Class)、引用源文件(Source Doc)、链接数据(Source Item)。

[注意]:设计链接对象时,OLE会保留一份影像,起初这份影像和数据文件是相同的,但是因为文件有可能被修改,可链接对象保存的仍然是原始数据的影像,为了使其具备自动更新的能力,只要在Form_Load事件过程加入如下代码:

Private sub Form_Load( )

OLE1.Action=6 ‘此语句用“OLE1.Update”方法也可以

End sub

2、设计时创建“嵌入对象”

创建嵌入对象时,既可从文件中嵌入数据,也可以创建一个新的空对象(可以被以后的数据填充)。

步骤:(1)添加一个“OLE容器控件”到窗体上,屏幕显示“插入对象”对话框。

(2)选择“从文件创建”,→“浏览”按钮→确定要嵌入的“文件名”。

(3)→“插入”按钮→返回“插入对象”对话框。

(4)→“确定”,即可创建嵌入对象。

另外,在此设计状态,也可修改OLE对象中的数据,方法为:

(1)→在OLE对象数据区单击鼠标右键,→弹出快捷菜单。

(2)选择“编辑”命令→出现Excel的编辑环境。

(3)修改完毕后,单击OLE对象数据区以外的区域,返回到创建嵌入对象的窗体。

[注意]:(1)不同于对象链接的是,嵌入对象中的数据被用户修改后不会被自动存储。当含有OLE控件的窗体被关闭时,与该控件相关的数据的任何变化将丢失。如果希望对数据所进行的修改在下次运行时能够显示出来,需要将更改的数据从对象保存至文件中(使用OLE控件的Save To File方法)。数据被保存在文件后,可以在需要的时候打开文件并恢复对象(使用OLE控件的Read From File方法)。

(2)将更改的数据从对象保存到文件中的方法(用一命令按钮的单击事件过程说明):

Private sub CmdSave_click( )

Dim FileNum as integer

FileNum=FreeFile ‘取文件号

Open “TEST.OLE” For Binary as #FileNum ‘打开要保存的文件

OLE1.SaveToFile FileNum ‘保存至文件

Close #FileNum ‘关闭文件

End sub

(3)将数据从文件读入OLE容器控件(使用OLE控件的ReadFromFile方法)

用一命令按钮的单击事件过程说明:

Private sub CmdOpen_click( )

Dim FileNum as integer

FileNum=FreeFile ‘取文件号

Open “TEST.OLE” For Binary as #FileNum ‘打开文件

OLE1.ReadFromFile FileNum ‘读文件

Close #FileNum ‘关闭二进制文件

End sub

3、使用“特殊粘贴”对话框创建链接对象或嵌入对象。

设计时创建对象的另一方法是使用“特殊粘贴”对话框,应用该方法可以只利用文件的一部分数据。(如只使用Excel数据表的一部分数据)

步骤:(1)运行一个包含链接或嵌入数据对象的应用程序(如Excel应用程序)。

(2)打开一个文件,选择要链接或嵌入的数据。

(3)→“编辑”菜单/“复制”命令→复制“数据”到剪贴板上。

(4)在VB的一个包含OLE控件的工程中,右击OLE控件→选择“特殊粘贴”命令→弹出“选择性粘贴”对话框。

(5)若想建立嵌入对象,选择“粘贴”选项; 若OLE控件中已有一个对象

若想建立链接对象,选择“粘贴链接”选项; 则会询问是否删除现有对象

(6)作出回答后,即在OLE控件上建立了一个新的对象。

4、利用OLE发出声音(实例)

步骤:(1)在窗体上添加OLE控件时,→弹出“插入对象”对话框,

在“对象类型”列表框中选“声音文件”;

选择⊙从文件创建;

→“浏览”按钮,选择文件:C:\windows\Canyon.mid ;

选择 链接, 显示为图标。

(2)单击“确定”按钮。

运行程序,双击OLE对象,将播放一段音乐。

三、在运行阶段创建链接或嵌入对象

要在程序代码运行时创建链接或嵌入对象,需要了解OLE容器控件的属性、事件和方法。

1、OLE容器控件的属性、方法、事件:

l Action属性:指定作用在OLE控件上的动作(如建立、删除、启动等)。

语法为:object.Action=value

value的设置值如下表: value值 描述 方法 0 创建嵌入对象 Create Embed 1 创建链接对象 Create Link 4 将对象复制到系统剪贴板 Copy 5 将对象从系统剪贴板复制到OLE容器控件 Paste 6 从提供对象的应用程序检索当前数据,并在

OLE容器控件中将该数据作为图片显示。 Update 7 打开一个对象,用于进行诸如编辑那样的操作 DoVerb 9 关闭对象,并与提供该对象的应用程序终止连接 Close 10 将指定的对象删除,释放与之关联的内存 Delete 11 将对象保存到数据文件中 SaveToFile 12 加载保存到数据文件中的对象 ReadFromFile 14 显示“特殊粘贴”对话框 PasteSpecialDlg 17 更新对象支持的谓词列表 FetchVerbs 18 将对象以OLE version 1.0版本的文件格式保存 SaveToOle1File l Class属性(类属性)

格式为:object.class

类名包含几个部分:application.objecttype.version

类名:说明对象类型。

Application :提供对象的应用程序名

Objecttype :在对象库中定义的对象名

Version :提供对象的应用程序的版本号

例如:Excel.Sheet.8

l OLEType Allowed属性

返回或设置OLE容器控件所能包含的对象类型。

语法为:object.OLETypeAllowed [=value]

value值的设置如下表: 常数 值 描述 VbOLELinked 0 链接的,OLE容器只能包含链接对象 VbOLEEmbeded 1 嵌入的,OLE容器只能包含内嵌对象 VbOLEEither 2 二者均可(缺省值) l SourceDoc属性

指定链接或嵌入对象时使用的源文件名。

语法为:object.sourceDoc [=name]

name :指定文件名的字符串表达式。

l SourceItem属性(只对链接有效)

在创建链接对象时,设置或返回要链接的文件内的数据。

语法为:object.sourceItem [=string]

string :一个指定被链接数据的字符串表达式。

例如:A1 :E1 或 A3C4 :A9D10

[注意]:当使用Action属性创建链接对象时,用SourceDoc 属性指定要链接的文件,使用sourceItem属性指定在要链接文件内的数据。

l Create Embed方法

该方法用来创建一个嵌入对象。

语法为:object.CreateEmbed sourcedoc[,class]

sourcedoc :必选项,对象从该文件中创建。

SourceItem :可选项,文件内的被链接的数据。

l DoVerb方法

打开一个对象(例如编辑一个对象)。

Object.DoVerb[verb]

Verb :可选项,在OLE容器控件内要执行的对象的谓词。

l InsertObjDlg方法

显示插入对象对话框。

语法为:object.InsertObjDlg

[说明](1)用户在运行这个方法时,将显示“插入对象”对话框,通过选取对象的类型,来创建链接的或内容嵌的对象,并由应用程序提供该对象。

(2)创建新对象时,与类名(如Excel.EXE)关联的应用程序,必须已在操作系统中正确地作了注册。

l PasteSpecialDlg方法

显示“特殊粘贴”对话框。

语法为:object.PasteSpecialDlg

l Updated事件

当一个已创建对象的数据发生改变(修改)时,会引发Updated事件。

l ObjectMove事件

当移动和OLE控件有关的对象以及调整其大小时,会触发ObjectMove事件。

l UpdateOptions属性

在运行时设置当链接数据修改后是否更新链接对象。

语法为:Object.UpdateOptions [=number]

其中Number的设置值为:

0 —— 自动的(缺省值),每次改变链接数据时均更新对象

1 —— 冻结的

2 —— 手动的,只有使用Update方法才更新对象

2、运行阶段建立链接对象

举例:(1)在窗体上添加2个OLE容器控件时,2个命令按钮。

(2)设计代码:

☆ 要求功能:①OLE1和OLE2链接同一个数据源。

②当改变(修改)OLE1容器控件中的链接数据时,OLE控件中链接同一个数据源的数据也要求跟着变化。

Private sub command1_click( )

OLE1.class=”Excel worksheet” 用”Excel.sheet.”也可以

OLE1.sourceDoc=”C:\My Documents\aa.xls”

OLE1.DrsplayType=0

OLE1.Action=1

OLE2.class=”Excelworksheet”

OLE2.sourceDoc=”C:\My Documents\aa.xls”

OLE2.DisplayType=0

OLE2.Action=1

End sub

Private sub command2_click( )

UnLoad Me

End sub

Private sub OLE1_Updated(code as integer)

OLE2.UpdateOptions=0 ‘用OLE2.Action=6也可以,或OLE2.Update方法也可以

End sub

Private sub OLE2_Updated(code as integer)

OLE1.UpdateOptions=0

End sub

3、运行阶段建立嵌入对象

运行时建立嵌入对象的方法与建立链接对象的方法相似,只不过此时在有关代码中用:

OLE1.Action=0 或使用 CreateEmbed方法。

[注意]:对嵌入对象的任何修改要保存的话,一定要使用前述的SaveToFile方法,将修改的数据保存至某个文件中,在需要的时候可打开文件并恢复修改的内容。

补充2:

应用OLE拖放(在你的VB应用程序中支持OLE拖动功能)

一、OLE拖放的含义

指将数据从一个控件或应用程序移动到另一个控件或应用程序。

例如:可先选定并拖动Excel中的一列单元,然后将它们放到VB应用程序的DataGrid控件上。

二、VB控件的OLE拖放功能

VB的几乎所有控件都在某种程度上支持OLE拖放(专业版和企业版)。

1、 自动支持OLE拖放的控件(既可从控件拖出,也可在控件放入)。

DataGrid , PictureBox ,RichTextBox ,Image ,TextBox ,MaskedEditBox

[注意]:要启动这些控件的自动OLE拖放功能,应将其OLE Drag Mode属性和OLEDropMode属性设置为“自动化”——“Automatic“

2、仅自动支持OLE拖动操作的控件(仅从控件拖出)。

ComboBox ,DataListBox ,FileListBox ,DataComboBox ,DirlistBox ,ListBox , TreeView ,ListView等。

[注意]:要启动这些控件的自动拖动功能,应将其OLEDragMode设置“自动化”。

3、仅支持OLE拖放事件的控件

——即可代码对它们编程,使之成为OLE拖放操作的源,也可使生成为OLE拖放操作的目标。

CheckBox , Frame , OptionButton , CommandButton , Label , DrivelistBox , Data等。

[注意]:(1)为判断其它ActionX控件是否支持OLE拖放,应在VB在加载控件,并检查OLEDragMode和OLEDropMode属性是否存在或检查OLEDrag方法是否存在。

(2)缺省规定:在将文本从文本框控件拖动到word文档时,文本被移动;若拖动文本的同时按下[Ctrl]键,则文本被复制。

CAD中OLE对象是什么

CAD中OLE对象是什么?首先OLE是ObjectLinkingandEmbedding的缩写,也就是链接和嵌入的意思,我们可以使用迅捷CAD编辑器中的OLE对象功能,在图纸的指定位置嵌入任何信息,比如文字、位图、矢量图形、声音注解和录像剪辑等等。那么如何在CAD图纸中插入OLE对象呢?具体操作方法如下:

1、启动CAD编辑器(标准版),打开需要编辑的CAD图纸,并切换到【编辑器】选项卡。

2、在【绘制】功能菜单中点击【OLE对象】按钮,激活该功能。

3、移动鼠标,框选需要嵌入对象的位置,也可以输入宽度和高度指定位置,在选择完成后,即可激活插入对象窗口。在弹出的插入窗口中,可以新建一个对象,也可以选择插入的对象,点击【又文件创建】,点击【浏览】按钮,添加需要插入的对象,选择完成后,点击确定按钮。

最后,我们就可以在CAD图中看到已经成功插入的OLE对象啦,这里我们如果看不到OLE对象内容,可以选择OLE对象,点击右键,选择【OLE】—【激活内容】就可以查看到OLE内容了。

在CAD中插入OLE对象怎么做?

1、启动CAD编辑器(标准版),打开需要编辑的CAD图纸,并切换到【编辑器】选项卡。

2、在【绘制】功能菜单中点 击【OLE对象】按钮,调用该功能。

3、移动鼠标,框选需要嵌入对象的位置,也可以输入宽度和高 度指 定位置,在选择完成后,即 可调用插 入对象窗口。

4、在弹出的插 入窗口中,可以新建一个对象,也可以选择插 入的对象,点 击【由文件创建】,点 击【浏览】按钮,添加需要插 入的对象,选择完成后,点 击确 定按钮。

5、然后,我们就可以在CAD图中看到已经成功插 入的OLE对象啦,

CAD中如何插入OLE对象文件?

1、插入、ole对象、新建、点选类型、输入编辑好关掉软件,就插入进来了

2、插入、ole对象、,由文件创建、浏览、选择文件、确定、调整参数。确定,就插入进来了

关于CAD不能插入OLE对象问题?

那你试一下新建文档,把图片插入到文档中,这样也可以插入图片的

原创文章,作者:IGOS,如若转载,请注明出处:https://www.506064.com/n/134670.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
IGOSIGOS
上一篇 2024-10-04 00:07
下一篇 2024-10-04 00:07

相关推荐

  • 面向对象编程、类和对象

    面向对象编程(Object-Oriented Programming, OOP)是一种编程方法,它将现实世界中的事物抽象为对象(Object),对象的属性和方法被封装成类(Clas…

    编程 2025-04-29
  • Mapster:一个高性能的对象映射库

    本文将深入介绍furion.extras.objectmapper.mapster,一个高性能的对象映射库,解释它是如何工作的以及如何在你的项目中使用它。 一、轻松地实现对象之间的…

    编程 2025-04-28
  • Python返回对象类型

    Python是一种动态、解释型、高级编程语言。Python是一种面向对象的语言,即所有的一切都是一个对象。 一、基本类型 Python中的基本类型有整数int、浮点数float、布…

    编程 2025-04-28
  • Python中通过对象不能调用类方法和静态方法的解析

    当我们在使用Python编写程序时,可能会遇到通过对象调用类方法和静态方法失败的问题,那么这是为什么呢?接下来,我们将从多个方面对这个问题进行详细解析。 一、类方法和静态方法的定义…

    编程 2025-04-27
  • Python内置函数——查看对象内存

    本文将介绍Python内置函数中,在开发中查看对象内存的相关函数。 一、id()函数 id()函数是Python内置函数,用于返回对象的唯一标识符,也就是对象在内存中的地址。 nu…

    编程 2025-04-27
  • 解决ERP运行时错误429:ActiveX不能创建对象 DAO350

    ERP运行时错误429是由于“ActiveX不能创建对象”而引发的。这种错误通常是由于您在尝试访问Microsoft Access数据库时缺少了必要的组件。 一、安装并注册DAO库…

    编程 2025-04-27
  • SpringBoot请求参数绑定

    解答:SpringBoot请求参数绑定是指将HTTP请求中的参数与Controller方法的参数绑定起来,使得参数的传递变得简单和方便。下面我们将从多个方面对SpringBoot请…

    编程 2025-04-25
  • forof遍历对象的详细阐述

    forof是一种ES6的语法糖,用于遍历可迭代对象。相较于传统的for循环和forEach方法,forof更加简洁、易读,并且可以遍历各种类型的数据。 一、基本语法 forof的基…

    编程 2025-04-25
  • Vue数组添加对象详解

    在Vue框架下,我们经常需要用到对数组添加新的对象的功能,在本篇文章中,我们将从以下几个方面对Vue数组添加对象做详尽的说明。 一、通过unshift和push方法添加对象 Vue…

    编程 2025-04-25
  • Vue数据绑定详解

    一、介绍 Vue.js是一款用于构建用户界面的JavaScript框架,在Vue中最重要的概念之一就是数据绑定。数据绑定是Vue将DOM和数据同步的核心机制,Vue实现数据绑定的方…

    编程 2025-04-25

发表回复

登录后才能评论