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

GenericMenu.AddDisabledItem

建议修改

成功!

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

关闭

提交失败

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

关闭

取消

声明

public void AddDisabledItem(GUIContent content);

参数

content 要显示为禁用菜单项的 GUIContent。

描述

向菜单添加一个禁用的项。

下面的示例显示了一个上下文菜单,其中包含一个可以切换的禁用菜单项。



其他资源:GenericMenu.AddItemGenericMenu.AddSeparator

// This example shows how to create a context menu inside a custom EditorWindow,
// where the first menu item toggles whether the second menu item is enabled
// or disabled.

using UnityEngine; using UnityEditor;

public class MyWindow : EditorWindow { [MenuItem("TestContextMenu/Open Window")] public static void Init() { var window = GetWindow(typeof(MyWindow)); window.position = new Rect(50, 50, 250, 60); window.Show(); }

bool item2enabled = false; public void Toggle() { item2enabled = !item2enabled; Debug.Log("item2enabled: " + item2enabled); }

public void Item2Callback() { Debug.Log("Item 2 Selected"); }

public void OnGUI() { Event evt = Event.current; Rect contextRect = new Rect(10, 10, 100, 100);

if (evt.type == EventType.ContextClick) { Vector2 mousePos = evt.mousePosition; if (contextRect.Contains(mousePos)) { // Now create the menu, add items and show it GenericMenu menu = new GenericMenu();

menu.AddItem(new GUIContent("Toggle item 2"), item2enabled, Toggle); if (item2enabled) { menu.AddItem(new GUIContent("Item 2"), false, Item2Callback); } else { menu.AddDisabledItem(new GUIContent("Item 2")); }

menu.ShowAsContext();

evt.Use(); } } } }

声明

public void AddDisabledItem(GUIContent content, bool on);

参数

content 要显示为禁用菜单项的 GUIContent。
on 指定是否显示该项目当前处于激活状态(即菜单项旁边有一个勾号)。

描述

向菜单添加一个禁用的项。