第 20 章 对象链接与嵌入 ❌

SailWind 4.0 不实现此功能 ❌

SailWind Logic 对象嵌入功能使设计工程师能够将对象嵌入到 SailWind Logic 设计文件中,并将其保存在其框架内。您还可以嵌入指向外部对象的链接,以便每次打开 SailWind Logic 数据库时,链接的对象都会自动更新。

[!TIP]

不支持将 SailWind Logic、Layout 或 Router 文件作为 OLE 对象插入其他文件(包括其他 SailWind 文件)。任何插入其他文件的 SailWind Logic、Layout 或 Router 文件都将无法正常运行,并且无法在“容器”应用程序(可视化编辑)中进行编辑。

您可以将其他文件或其他应用程序作为链接或嵌入对象插入到 SailWind Logic 原理图中。您可以插入 Microsoft Word 文档、包含物料清单的 Microsoft Excel 电子表格、视频或音频剪辑等等。SailWind Logic 无需理解插入对象的格式;SailWind Logic 会与创建该文件的应用程序进行通信,并由该源应用程序告知 SailWind Logic 要显示哪些信息以及如何显示。

[!TIP]

您不能在元件编辑器中插入或修改 OLE 链接或嵌入的对象。

在 SailWind Logic 中插入 OLE 对象

当您在 SailWind Logic 示意图中插入 OLE 对象时,您可以选择嵌入它或链接到它。

  • 嵌入对象位于原理图中,只能在 SailWind Logic 内部访问。例如,嵌入的 Word 对象只能在其所在的原理图中打开和编辑。
  • 链接对象位于磁盘上,可以通过 SailWind Logic 或直接从磁盘在其相应的应用程序中打开。它不会被永久复制到原理图中,而是在每次打开原理图时从磁盘读取。

[!TIP]

不支持将 SailWind Logic、Layout 或 Router 文件作为 OLE 对象插入其他文件(包括其他 SailWind 文件)。任何插入其他文件的 SailWind Logic、Layout 或 Router 文件都将无法正常运行,并且无法在“容器”应用程序(可视化编辑)中进行编辑。

有三种方法可以在 SailWind Logic 示意图中插入 OLE 对象:

  • 插入一个新的(空的)嵌入对象,然后创建该对象的内容。例如,插入一个新的 Word 文档,然后在原理图中使用 Word 进行编辑。
  • 将现有应用程序或文件的副本作为嵌入对象插入。原始文件更新时,嵌入对象不会更新。
  • 将指向现有应用程序或文件的链接作为链接对象插入。只要链接对象所链接的文件更新,链接对象就会更新。

本主题的以下部分介绍如何在 SailWind 示意图中插入 OLE 对象:

插入新的嵌入式 OLE 对象

将现有文件作为嵌入对象插入

将现有文件作为链接对象插入

插入新的嵌入式 OLE 对象

您可以在 SailWind Logic 原理图中添加一个新的嵌入式 OLE 对象。通过嵌入对象,它不会受到外部源文件更改的影响。

🏃‍♂️‍步骤

  1. 单击编辑 > 插入新对象菜单项。

  2. 从插入对象对话框中,选择新建。

  3. 从对象类型列表框中,选择要创建的 OLE 对象的类型。

    TIP

    您只能使用已在系统上安装并注册的 OLE 服务器应用程序来创建新的 OLE 对象。大多数 OLE 服务器都是 Microsoft 产品,例如 Word 或 Excel。

  4. 要将原理图中的新对象显示为图标,请选中“显示为图标”复选框。

    将显示的图标出现在复选框下方。

    取消选中该复选框以显示整个对象;例如,显示实际的 Word 文档而不是 Word 图标。

  5. 单击“确定”。与您选择的对象类型关联的应用程序将打开,您可以在第 364 页上编辑新对象的内容:

  6. 如果应用程序是 OLE 链接和嵌入服务器,它将在 SailWind Logic 内部打开,但在后台运行。应用程序的工具栏将接管 SailWind Logic 的工具栏。然后,您可以像在 SailWind Logic 外部启动一样操作源应用程序。这称为可视化编辑。

    单击对象外部,SailWind Logic 工具栏将再次接管。您可以继续在 SailWind Logic 中进行设计。该应用程序将继续在后台运行;因此,您可以随时单击该对象并在源应用程序中进行操作。

    如果与该对象关联的应用程序不是 OLE 链接和嵌入服务器,则该应用程序将在新窗口中打开。

  7. 编辑完成后,请关闭该对象。您可以随时双击该对象重新打开它。

将现有文件作为嵌入对象插入

作为嵌入对象插入到 SailWind Logic 原理图中的现有文件是其创建源文件的副本。它不链接到原始源文件,不会在源文件更改时更新,并且只能从 SailWind Logic 访问。

🏃‍♂️‍步骤

  1. 单击编辑 > 插入新对象菜单项。
  2. 从插入对象对话框中,选择从文件创建。
  3. 在文件编辑框中,键入要插入的文件的路径名,或单击浏览按钮搜索文件。
  4. 取消选中“链接”复选框以将 OLE 对象作为嵌入对象插入。
  5. 要在原理图中将对象显示为图标,请勾选“显示为图标”复选框。显示的图标将显示在复选框下方。取消勾选复选框则显示整个对象;例如,显示实际的 Word 文档而不是 Word 图标。
  6. 单击“确定”。该对象已插入原理图。

将现有文件作为链接对象插入

作为链接对象插入到 SailWind Logic 原理图中的现有文件仅仅是指向磁盘上源文件的链接。该文件不会永久复制到原理图中,而是在每次打开原理图时从磁盘读取。该文件可以在 SailWind Logic 内部打开,也可以直接从磁盘打开。

🏃‍♂️‍步骤

  1. 单击编辑 > 插入新对象菜单项。
  2. 从插入对象对话框中,选择从文件创建。
  3. 在文件编辑框中,键入要插入的文件的路径名,或单击浏览按钮搜索文件。
  4. 选中“链接”复选框以将 OLE 对象作为链接对象插入。
  5. 要在原理图中将对象显示为图标,请勾选“显示为图标”复选框。显示的图标将显示在复选框下方。取消勾选复选框则显示整个对象;例如,显示实际的 Word 文档而不是 Word 图标。
  6. 单击“确定”。该对象已插入原理图。

嵌入文本文档

使用 OLE,您可以在原理图内嵌入文本文档,以便更快地添加多行文本,因为原理图编辑工具栏上的创建文本工具只允许单行文本。

建议使用嵌入而不是链接,因为嵌入的文档将驻留在 .sch 文件内,不会丢失或作为外部文件意外删除。

您可以在 preview.sch 示例设计中看到此示例。请参阅图页 1 左下角的“注释”部分。双击文本即可激活 Microsoft Word 文档。

🙊限制

  • OLE 对象只能打印。它们无法使用笔式绘图仪或光绘仪进行绘制。
  • 必须在第 606 页的“打印选项”对话框中启用 OLE 对象才能在打印输出中显示,但在查看“打印预览”时,它们将始终不可见。
  • OLE 对象只能使用零绘图方向进行打印。

🏃‍♂️‍步骤

按照 SailWind Logic 中 OLE 对象插入中的相应说明进行操作。

[!TIP]

当对象处于活动状态可供编辑时,您可以在设计中调整对象的大小。

关闭 OLE 对象的显示

SailWind Logic 无法识别插入对象的格式;它仅与创建 OLE 链接或嵌入对象的应用程序通信以显示信息。如果创建链接或嵌入 OLE 对象的应用程序已在您的系统上安装并注册,则 SailWind Logic 会调用该应用程序,在 SailWind Logic 中显示 OLE 对象,就像它在源应用程序中的显示方式一样。例如,Word 文档可以显示在 SailWind Logic 中,Word 工具栏也可以显示在 SailWind Logic 中。

如果您的系统上未安装并注册源应用程序,SailWind Logic 只能将插入的 OLE 对象显示为图标。它无法像在源应用程序中那样打开或显示 OLE 对象。如果对象是应用程序,SailWind Logic 也会将 OLE 对象显示为图标。

当 SailWind Logic 包含大量链接或嵌入对象时,您可能需要关闭 OLE 对象的显示,因为重绘速度可能会降低。如果实际显示 OLE 项的 OLE 链接和嵌入服务器或源应用程序未针对远程显示进行优化,重绘速度会显著降低。

🏃‍♂️‍步骤

  1. 单击工具 > 选项菜单项,然后在选项对话框中单击常规类别。
  2. 清除“显示 OLE 对象”复选框。 另请参阅“选项”对话框,“设计”类别。

OLE 对象选择

SailWind Logic 中 OLE 对象的选择与焊盘、网络、组件等其他对象的选择不同。

不同之处在于:

  • 不能一次选择多个 OLE 对象。
  • 您不能使用区域选择来选择 OLE 对象。
  • 即使您同时选择了 SailWind Logic 对象,命令也仅适用于选定的 OLE 对象。OLE 对象的选择优先级高于 SailWind Logic 组件。
  • OLE 对象始终位于顶部;要选择 OLE 对象下的 SailWind Logic 项目,必须移动 OLE 对象。

当您在 SailWind Logic 中点击一个 OLE 对象时,它的行为类似于 Word 文件中的非文本项。也就是说,它会变成一个带有尺寸控点的矩形区域,以指示它已被选中。(尺寸控点是一些黑色的小方块,出现在选定对象周围的矩形区域的角落和边缘。)

右键单击选定的 OLE 对象以访问快捷菜单,其中列出了可应用于 OLE 对象的所有命令。

移动和调整 OLE 对象的大小

移动和调整 OLE 链接或嵌入对象的大小,就像在 Word 中调整非文本对象的大小一样。

🏃‍♂️‍步骤

选择对象。

  • 要移动 OLE 对象,请单击并按住鼠标左键。移动光标即可移动对象。当对象到达正确位置后,松开鼠标按钮。
  • 要调整 OLE 对象的大小,请在其中一个尺寸控点上单击并按住鼠标左键。移动光标;对象将根据光标的移动调整大小。当对象大小调整到正确大小后,松开鼠标按钮。

更改 OLE 对象的图标或标签

您可以更改原理图中嵌入或链接对象的图标,也可以更改图标下方显示的描述性标签。

🏃‍♂️‍步骤

  1. 单击该对象以选择它。
  2. 右键单击并选择 > 转换以显示转换对话框。
  3. 单击更改图标按钮以显示更改图标对话框。
  4. 在更改图标对话框中,单击图标单选按钮来选择对象的图标:
  5. 如果您想保留当前图标但更改对象的标签,请保留“当前”单选按钮的设置。
  6. 单击“默认”单选按钮可更改为默认图标。
  7. 点击“来自文件”单选按钮,从文件中选择新图标。如果“来自文件”编辑框中未显示任何文件,请点击“浏览”按钮搜索包含您想要用于表示对象的图标的文件。然后在列表框中点击所需的图标。
  8. 要更改对象的标签,请在标签编辑框中编辑它。
  9. 单击“确定”返回“转换”对话框。
  10. 在转换对话框中,单击确定以保存更改。

将 OLE 对象转换为另一种类型

您可以更改插入的 OLE 对象的文件格式,以便在您使用的应用程序中打开它。您可以临时更改格式(在单个编辑会话中,更改后对象将以其原始格式保存),也可以永久更改格式(将对象转换为新格式并以新格式保存)。

🏃‍♂️‍步骤

  1. 单击该对象以选择它。

  2. 右键单击并选择 > 转换以显示转换对话框。

  3. 在对象类型列表框中,单击要将对象转换为的对象类型。

  4. 单击“转换为”或“激活为”指定转换模式:

    a. 单击“转换”将对象转换为“对象类型”框中选定的类型。

    对象将转换为新的对象类型并保存。

    b. 单击“激活为”以“对象类型”框中选定的类型打开对象。

    激活并编辑对象后,对象将恢复为当前类型。
  5. 要将原理图中插入的对象显示为图标,请选中“显示为图标”复选框。

显示的图标将显示在复选框下方。

取消选中该复选框将显示整个对象;例如,显示实际的 Word 文档,而不是 Word 图标。

[!TIP]

如果对象的源应用程序未在您的系统上注册,则该对象只能显示为图标。

  1. 单击“确定”即可转换或激活该对象。

OLE 对象的编辑

您可以对 OLE 链接或嵌入的对象执行有限的编辑操作,包括复制、粘贴、删除、打开和转换 OLE 对象。

  • 剪切、复制和粘贴 SailWind Logic OLE 对象

  • 编辑 > 删除所有 OLE 对象 — 允许您删除设计中的所有 OLE 对象。系统将出现提示:“所有当前 OLE 链接和嵌入的对象都将从此设计中删除。是否继续?”。

  • 编辑 OLE 链接

  • 打开、编辑、转换 OLE 对象

  • 在 SailWind Logic 中编辑 OLE 对象的内容

剪切、复制和粘贴 SailWind Logic OLE 对象

编辑 OLE 链接或嵌入对象与编辑 SailWind Logic 对象类似。您可以使用“编辑”菜单中的“剪切”、“复制”和“粘贴”命令来剪切、复制和粘贴 OLE 对象。您必须先选中 OLE 对象,然后才能编辑该对象。您可以将对象从一个图页复制到另一个图页。

[!TIP]

在元件编辑器中,您不能剪切、复制或粘贴 OLE 对象。

🏃‍♂️‍步骤

  1. 按如下方式复制或剪切 OLE 对象:

    a. 选择 OLE 对象。

    b. 单击编辑 > 复制菜单项(复制对象)或编辑 > 剪切菜单项(剪切对象)。

  2. 单击编辑 > 粘贴菜单项以粘贴对象。

  3. 根据需要重新定位粘贴的对象。

编辑 OLE 链接

您可以编辑链接的 OLE 对象的链接来更改源文件、断开与源文件的链接、指定更新选项或手动更新链接对象。

  • 更改对象的源文件(即将对象链接到不同的文件)。

  • 断开与源文件的链接,使链接对象成为嵌入对象。

  • 选择对象的更新模式,即指定对象是否自动更新(每当源文件更改时),或者仅在执行更新命令时更新。

  • 手动更新链接对象。

更改链接的 OLE 对象的源文件

如果您的设计目标发生变化,您可以更改对象链接到的源文件。

🏃‍♂️‍步骤

  1. 单击编辑 > 链接菜单项。
  2. 从“链接”对话框的列表中,选择要更改其源文件的对象。
  3. 单击“更改源”按钮。
  4. 在“更改源”对话框中,浏览并选择对象的新源文件,然后单击“打开”。 该对象将链接到新的源文件。

断开与链接的 OLE 对象源文件的链接

如果您不再想链接到源对象,您可以断开与对象源文件的链接,以便在源文件发生更改时它不会自动更新。

[!TIP]

一旦对象的链接断开,就无法重新连接。

🏃‍♂️‍步骤

  1. 单击编辑 > 链接菜单项。

  2. 从“链接”对话框的列表中,选择要断开其链接的对象。

  3. 点击“断开链接”按钮,然后在弹出的窗口中点击“是”。链接断开,对象变为嵌入的 OLE 对象。

    TIP

    如果断开链接的对象已图标化,则要查看该对象,必须先在第 362 页上将其转换为图片对象。

设置链接 OLE 对象的更新模式

您可以设置链接的 OLE 对象的更新模式,并选择自动或手动更新。

🏃‍♂️‍步骤

  1. 单击编辑 > 链接菜单项。

  2. 从“链接”对话框的列表中,选择要设置更新模式的对象。

  3. 单击“自动”或“手动”单选按钮设置更新模式:

    a. 单击“自动”,当您打开 SailWind Logic 文件时以及源文件发生更改时,对象都会自动更新。

    b. 单击“手动”,仅当您对对象执行更新命令时才更新对象。

手动更新链接的 OLE 对象

您可以手动更新更新模式设置为“手动”的链接对象。(设置为“自动更新”的对象会自动更新,因此手动更新这些对象不会产生任何效果。)

🏃‍♂️‍步骤

  1. 单击编辑 > 链接菜单项。
  2. 从“链接”对话框的列表中,选择要更新的对象。
  3. 单击立即更新按钮;对象已更新。

打开、编辑、转换 OLE 对象

插入 OLE 对象后,该对象的名称将显示在“编辑”菜单的底部。例如,如果您插入视频剪辑,“视频剪辑对象”将显示在“编辑”菜单的底部。如果您突出显示“视频剪辑对象”命令,则会出现另一个菜单,其中列出了您可以对链接或嵌入的 OLE 对象执行的所有命令。对于“视频剪辑对象”,您可以点击“播放”、“编辑”或“打开”。

[!TIP]

每个对象显示的命令取决于对象类型;因此,Word 对象不会具有与视频剪辑相同的选项。

您将看到的与 OLE 对象相关的一些更常见的命令是:

  • 编辑 — 使用“编辑”功能编辑 SailWind Logic 中链接或嵌入的 OLE 对象。您可以使用源应用程序的所有命令和工具来编辑该对象。

  • 打开 — 使用“打开”在源应用程序中打开链接或嵌入的 OLE 对象。然后您可以在源应用程序中编辑该对象。

  • 转换 — 您可以将一个 OLE 对象转换为另一个对象。您还可以将 OLE 对象从图标显示转换为实际对象;例如,将 Word 文档转换为图标。使用“转换”可以将链接或嵌入的 OLE 对象转换为其他类型的对象;例如,将 Word 文档转换为 Word 图片。

    TIP

    对象的源应用程序决定了对象可以转换为什么。

在 SailWind Logic 中编辑 OLE 对象的内容

您可以在 SailWind Logic 中编辑对象的内容(称为就地可视化编辑),也可以在单独的窗口中编辑。无论哪种方式,您都可以像平常一样使用源应用程序的所有命令和工具来编辑其内容。

现场可视化编辑

当链接或嵌入的 OLE 对象的源应用程序在 SailWind Logic 中打开时,即可进行可视化编辑。您也可以通过打开源应用程序并在创建对象的环境中编辑该对象来编辑 OLE 对象。

要在 SailWind Logic 中编辑对象,请双击该对象。

单击对象外部即可停用可视化编辑。更新将自动反映在对象中。

[!TIP]

您无法使用可视化编辑功能在 SailWind Logic 中编辑嵌入的 SailWind 程序。

选择对象进行就地编辑时,可能会出现以下例外情况:

  • 链接对象无法就地编辑:它们会在单独的窗口中打开进行编辑。

  • 如果容器应用程序不支持就地可视化编辑,则对象会在单独的窗口中打开。

单独窗口编辑

您可以在单独的窗口中编辑 SailWind Logic 之外的对象。要编辑 SailWind Logic 之外的对象,请执行以下操作:

  • 选择 SailWind Logic 对象,然后单击编辑 > (链接)文档对象 > 编辑菜单项。您还可以从弹出菜单中选择“(链接的)文档对象 > 编辑菜单项。
  • 按住 Ctrl + 双击要在源应用程序中编辑的 OLE 对象。源应用程序打开,您可以编辑该对象。

要更新 SailWind Logic 中的对象:

  • 点击“主页 > 更新文档菜单项。这将强制重新绘制对象。

  • 在第 595 页上的“选项对话框,常规类别”中设置 SailWind Logic OLE 对象的首选项。当您选中重绘时更新复选框时,每当您在单独的编辑窗口中执行重绘时,容器应用程序中的对象都会更新。

为了获得最佳性能,请清除此选项。

要返回容器应用程序,请选择主页 > 退出并返回菜单项。

[!TIP]

如果您想在单独的窗口中保存编辑的对象,可以点击“主页 > “ 将副本另存为”菜单项。该对象实际上是原始对象的副本,此命令可让您保存此副本。您无法在单独的窗口中打开其他文件、创建新文件或保存原始设计。

OLE 和打印/绘图

您可以将 OLE 链接或嵌入的对象打印到任何 Windows 支持的打印机或绘图仪。您无法使用照片打印或笔式打印 OLE 对象。此外,预览打印时不会显示 OLE 对象。

另请参阅绘制输出。

删除 OLE 对象

如果您的设计中不再需要它们,您可以删除 OLE 链接或嵌入的对象。

🏃‍♂️‍步骤

  1. 选择要删除的 OLE 对象。

  2. 单击编辑 > 删除菜单项,或单击 Delete 键。

    TIP

    当您删除包含 OLE 对象的图页时,所有 OLE 对象也会被删除。

  3. 要删除设计中的所有 OLE 对象,请单击编辑 > 删除所有 OLE 对象菜单项。

    这使您可以删除设计中的所有 OLE 对象。

    出现提示“所有当前 OLE 链接和嵌入对象都将从此设计中删除。是否继续?”。

重绘包含 OLE 对象的屏幕

SailWind Logic 重绘时,会先重绘 SailWind Logic 组件,然后再重绘 OLE 链接或嵌入的对象。OLE 对象始终以相同的顺序重绘,并且始终在 SailWind Logic 对象之后重绘;因此,OLE 对象始终显示在 SailWind Logic 组件之上。

您还可以选择在重绘工作区时更新链接对象和嵌入对象,方法是使用 > ”全局类别中) 。当不存在 OLE 对象时,此选项将灰显。

OLE 和视图菜单命令

您可以将全部“视图”菜单命令与 OLE 链接或嵌入的对象一起使用;您可以放大或缩小对象。

更改 OLE 对象背景颜色

OLE 链接或嵌入对象显示为纯白色背景。在某些情况下,您可能希望使用透明背景显示 OLE 对象;例如,由于位图已包含背景,您可能希望使用透明背景。如果您的对象是 Word 文档,那么您可能更喜欢白色背景,因为透明背景上的黑色文本会显示为黑色,或者对象不可见。

🏃‍♂️‍步骤

  1. 选择 OLE 对象。

  2. 右键单击,然后单击“白色背景”以更改背景颜色。

    命令旁边的勾号表示该对象将使用白色背景。

保存 OLE 对象

保存 SailWind Logic 原理图时,链接对象和嵌入对象会自动保存为原理图的一部分。如果您想单独保存 OLE 对象,请使用“主页 > “导出” 将对象保存为 .ole 文件。然后,您可以使用 > “ 导入”将对象导入其他设计。

SailWind Logic 的 .ole 文件可以在其他支持 .ole 文件格式的应用程序中打开。例如,如果您将一个 Word 文档插入 SailWind Logic,然后保存该 Word 对象,之后您就可以打开 Word 并打开存储在 SailWind Logic .ole 文件中的 Word 文档。

🏃‍♂️‍步骤

  1. 单击主页 > 导出菜单项。
  2. 在“文件导出”对话框中,从“保存位置”下拉列表中选择文件的位置。
  3. 在文件名编辑框中,键入要保存的 OLE 文件的名称。
  4. 从保存类型下拉列表框中,选择 OLE 文件 (*.ole)。
  5. 为要保存的 OLE 文件键入一个名称。
  6. 单击“保存”。