版本:Unity 6 (6000.0)
语言英语
  • C#

DropdownMenu.AppendAction(string,Action<DropdownMenuAction>,Func<DropdownMenuAction,DropdownMenuAction.Status>,object)

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们会阅读用户建议的每项更改,并在适用情况下进行更新。

关闭

提交失败

由于某种原因,您建议的更改无法提交。请在几分钟后<a>重试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

参数

actionName 项目名称。此名称显示在下拉菜单中。
action 当用户在菜单中选择此项目时要执行的回调。
actionStatusCallback 执行以确定该项目状态的回调。
userData 存储在 <see cref="DropdownMenuAction" /> 项目 <b>userData</b> 属性中的对象。

说明

添加一个在下拉菜单中执行操作的项目。

该项目被添加到当前项目列表的末尾。

using UnityEditor;
using UnityEngine;
using UnityEngine.UIElements;

public class ContextMenuWindow : EditorWindow { [MenuItem("My/Context Menu Window")] static void ShowMe() => GetWindow<ContextMenuWindow>();

void CreateGUI() { var contextMenuContainer = new VisualElement(); contextMenuContainer.style.flexGrow = 1; contextMenuContainer.AddManipulator(new ContextualMenuManipulator(e => { e.menu.AppendAction("Submenu/My Action 1", a => Debug.Log("My Action 1 Works"), action => { action.tooltip = "Status dependent tooltip"; return DropdownMenuAction.Status.Normal; }, null); }));

rootVisualElement.Add(contextMenuContainer); } }

参数

actionName 项目名称。此名称显示在下拉菜单中。
action 当用户在菜单中选择此项目时要执行的回调。
status 项目的状况。

说明

添加一个在下拉菜单中执行操作的项目。

该项目被添加到当前项目列表的末尾。

using UnityEditor;
using UnityEngine;
using UnityEngine.UIElements;

public class ContextMenuWindow : EditorWindow { [MenuItem("My/Context Menu Window")] static void ShowMe() => GetWindow<ContextMenuWindow>();

void CreateGUI() { var contextMenuContainer = new VisualElement(); contextMenuContainer.style.flexGrow = 1; contextMenuContainer.AddManipulator(new ContextualMenuManipulator(e => { e.menu.AppendAction("My Action 1", a => Debug.Log("My Action 1 Works"), DropdownMenuAction.Status.Normal); }));

rootVisualElement.Add(contextMenuContainer); } }