企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持知识库和私有化部署方案 广告
# 上下文菜单 通过“上下文菜单”标签页,您可以将命令添加到文件和文件夹的上下文菜单中。例如,Opus 使用此系统通过 **所有文件和文件夹** 文件类型显示 *剪切* / *复制* / *粘贴* 等“标准”上下文菜单项目。 ![](/Manual/images/media/context_menu_-_all_files.png)  当您右键单击文件或文件夹以显示其上下文菜单时,Opus 就会在系统注册表和自己的文件类型设置中搜索可在菜单中显示的命令。上下文菜单由与您单击的文件匹配的 **所有** 文件类型构成。因此,例如 **.jpg** 文件的上下文菜单将包含来自 **JPEG 图像** 文件类型、**图片** [文件类型组](../file_type_groups.zh.md)、**[识别图像](../directory_opus_file_types.zh.md)** 文件类型、**[所有文件](../directory_opus_file_types.zh.md)** 文件类型以及 **[所有文件和文件夹](../directory_opus_file_types.zh.md)** 文件类型的命令。 您可以使用 [文件类型编辑器](../filetype_editor/README.zh.md) 的此页面添加两种类型的上下文菜单项: - **全局**:保存在系统注册表中的上下文菜单项,它将显示在资源管理器和其它程序中以及 Opus 中的上下文菜单上。这些命令必须调用外部可执行程序。 - **仅限 Opus**:仅在 Opus 的上下文菜单中显示的上下文菜单项,它们不会出现在资源管理器中。这些命令可以使用内部 Opus 命令,也可以调用外部程序。 来自系统但未作为注册表中的“静态动词”提供的(例如,它们使用 *上下文菜单扩展处理程序*)的上下文菜单命令无法通过此系统进行配置。也可以(通过一些调整)控制这些上下文菜单项的显示,有关更多信息,请参阅 [此常见问题解答](https://resource.dopus.com/t/tip-organise-and-speed-up-context-menus/1204)。 此页面底部的 **新建** 按钮可让您为文件类型添加一个新的上下文菜单项。**编辑** 按钮可让您编辑现有的上下文菜单项(或直接在列表中双击它),而 **删除** 按钮可让您删除它。**设为默认值** 按钮可让您将一个 *全局*(但不是 *仅限 Opus*)上下文菜单项设为文件类型的默认操作 - 即在您双击该文件时通常会运行的命令。 您还可以在上下文菜单列表中的项上右键单击以显示上下文菜单上下文菜单(呵呵,抱歉!)。此上下文菜单可让您使用 **复制** 和 **粘贴** 将定义从一个命令复制到另一个命令。此外,还有 **开始组** 选项,可让您在上下文菜单项之间放置分隔符。当您在某个项上右键单击并选择 **开始组** 时,会在此项上方显示一个分隔符(如您在上方的屏幕截图中在 **创建快捷方式** 命令上方所看到的)。 您可以使用拖放操作对列表中的上下文菜单项重新排序,也可以添加或删除分隔符(通过将该项轻微地拖动一小段距离并将其拖放到它自身上)。如果您同时打开了两个 [文件类型编辑器](../filetype_editor/README.zh.md) 对话框,也可以将上下文菜单定义从一个编辑器拖放到另一个编辑器,以将命令从一个文件类型复制到另一个文件类型。 ------------------------------------------------------------------------ 将新的上下文菜单项添加到系统文件类型时,您需要选择是要将它设为 *全局* 还是 *仅限 Opus*。 ![](/Manual/images/media/edit_new_action_for_type_jpeg_image.png)  这是通过 **类型** 下拉列表来实现的。此下拉列表最初有四个选项: - **运行应用程序**:定义运行外部程序的上下文菜单命令。这将使该项成为全局项 - 它将同时显示在 Opus 和资源管理器中的上下文菜单中。 - **DDE 命令**:定义使用 DDE 与外部程序通信的命令。这也会将该项定义为全局项 - 它将在 Opus 和资源管理器中同时起作用。 - **运行 Opus 函数**:这会将该项定义为仅限 Opus。此类型的命令可以使用 Opus [内部命令](/Manual/reference/command_reference/internal_commands/README.zh.md) 并启动外部程序。它只会显示在 Opus 内的上下文菜单中。 - **子菜单**:这是一种特殊类型(在下面解释),它可让您在上下文菜单中创建子菜单。这也是仅限 Opus 的。 一旦将某个函数定义为 **运行应用程序** 或 **DDE 命令**,您就不能将其转换为 **运行 Opus 函数** 类型的项;反之亦然。如果您单击 **确定** 按钮保存新的上下文菜单项,然后选择它并单击 **编辑** 按钮,您会看到 **类型** 字段已消失(对于仅限 Opus 的函数),或者现在仅包含 **运行应用程序** 和 **DDE 命令** 的选项(对于全局菜单项)。 如果您将上下文菜单项添加到 [文件类型组](../file_type_groups.zh.md),那么前两个类型选项将不可用,因为组仅在 Opus 中有效,无法向其中添加全局菜单项。 对于所有上下文菜单项类型,**操作** 字段定义在上下文中菜单中该命令显示的标记。**操作** 字段右边的方框可让您指定一个图标,该图标也会在上下文菜单中标记的左侧显示。仅当上下文菜单在 Opus 中打开时才会显示该图标 - 资源管理器不支持显示该图标。 **运行应用程序** 类型上下文菜单命令的 **应用程序** 字段是您定义外部程序路径和传递给该程序的任何参数的地方。例如,在记事本中打开所选文件的命令可能如下所示: ![](/Manual/images/media/context_menu_-_open_in_notepad.png)  **应用程序** 命令使用 **%1** [控制代码](/Manual/customize/creating_your_own_buttons/passing_files_to_external_programs.zh.md)将所选文件名传递给 Notepad.exe。 **DDE 命令** 在 Opus 和资源管理器中都受支持。尽管在当今您可能不太可能需要定义 DDE 命令,但是您可以在 [操作标签页说明](actions.zh.md) 中找到有关它们的更多信息。 **运行 Opus 函数** 类型使用标准 [命令编辑器](/Manual/customize/creating_your_own_buttons/command_editor/advanced_command_editor.zh.md) 的一个变体来定义一个函数,该函数既可以使用 Opus [内部命令](/Manual/reference/command_reference/internal_commands/README.zh.md),也可以使用外部程序。您可以在默认 **图片** 文件类型组的上下文菜单中看到一个示例: ![](/Manual/images/media/context_menu_-_convert_image.png)  此屏幕截图显示,已为此文件类型定义了调用 [图像转换](/Manual/additional_functionality/image_conversion/README.zh.md) 函数的上下文菜单项。因为它使用了内部 Opus 命令(**[图像](/Manual/reference/command_reference/internal_commands/image.zh.md)**),所以此上下文菜单不会出现在资源管理器中,只会出现在 Opus 中。实际上,由于此上下文菜单位于 **图片** 文件类型组上,因此它无论如何必须是一个仅限 Opus 的命令,但它也可能出现在像 **JPEG 图像** 这样的系统文件类型的上下文菜单上。 ![ ](/Manual/images/media/context_menu_-_convert_image_def.png) 您可看到,没有 **类型** 下拉选项,因为 Opus 专用项的类型无法更改。标准 [命令编辑器](/Manual/customize/creating_your_own_buttons/command_editor/advanced_command_editor.zh.md) 控制项可让您定义功能。上下文菜单项的标签(**&转换图像...**)填写在 **操作** 字段中,标签中的和号(**&**)指定的是在上下文菜单中对标签的哪个字母加下划线。 ------------------------------------------------------------------------ 在创建新菜单项时,**类型** 下拉选项中的第四个选项是 **子菜单**。这可让您在上下文菜单中创建子菜单 - 您可以将命令组从主上下文菜单移到子菜单中,以便将相关命令放在一起,或者保持主上下文菜单的整洁。子菜单仅在 Opus 中显示上下文菜单时才起作用,它们不会出现在资源管理器中。如果将全局上下文菜单项添加到 Opus 中的子菜单,则该项会出现在资源管理器中的主上下文菜单中。 **子菜单** 的唯一选项是 **标签** 和图标(要设置图标,请单击 **标签** 字段右侧的小方框)。 ![](/Manual/images/media/context_menu_-_sub_label.png) 在上下文菜单列表中,位于子菜单中的项以缩进的形式显示。 ![](/Manual/images/media/context_menu_-_subs.png) 在上面的屏幕截图中,**记事本** 项将出现在主上下文菜单中,后跟一个名为 **在其它程序中打开** 的子菜单。该子菜单中有两项,**Notepad++** 和 **Opus 查看器**。在该子菜单之后(在主菜单中)是另一项 **文本编辑器**。 列表中显示在子菜单下方所有上下文菜单项会自动置于该子菜单中。要指定标记返回到顶级菜单的项,您必须在列表中右键单击该项,然后选择 **减少缩进** 命令。在上面的屏幕截图中,此命令已运行在 **文本编辑器** 项上,该项的缩进级别降低,并移回主菜单。 ![](/Manual/images/media/context_menu_-_context_menu.png) 子菜单可以嵌套(您可以将子菜单放在子菜单中,子菜单再放在子菜单中,以此类推)。 如果您右键单击上下文菜单编辑器中子菜单下的第一个项,还将提供一个名为 **按钮** 的选项。如果您启用此选项,则子菜单将像“菜单按钮”一样运行,也就是说,您将可以单击子菜单本身以运行其中的第一个命令,也可以打开菜单以访问其它命令。