Version: 5.3 (switch to 5.4b)
ЯзыкEnglish
  • C#
  • JS

Язык программирования

Выберите подходящий для вас язык программирования. Все примеры кода будут представлены на выбранном языке.

GenericMenu

class in UnityEditor

Предложить изменения

Успех!

Благодарим вас за то, что вы помогаете нам улучшить качество документации по Unity. Однако, мы не можем принять любой перевод. Мы проверяем каждый предложенный вами вариант перевода и принимаем его только если он соответствует оригиналу.

Закрыть

Ошибка внесения изменений

По определённым причинам предложенный вами перевод не может быть принят. Пожалуйста <a>попробуйте снова</a> через пару минут. И выражаем вам свою благодарность за то, что вы уделяете время, чтобы улучшить документацию по Unity.

Закрыть

Отменить

Руководство

Описание

GenericMenu позволяет создавать произвольный контекст и выпадающие меню.

The example below opens an Editor window with a green area. Context-clicking the green area shows a context menu, which triggers a callback to the script when an item is selected.

.


        
using UnityEngine;
using UnityEditor;
using System.Collections;

// This example shows how to create a context menu inside a custom EditorWindow. // context-click the green area to show the menu

public class GenericMenuExample : EditorWindow {

[MenuItem("Example/Open Window")] static void Init() { EditorWindow window = GetWindow<GenericMenuExample>(); window.position = new Rect(50, 50, 250, 60); window.Show(); }

void Callback(object obj) { Debug.Log("Selected: " + obj); }

void OnGUI() { Event currentEvent = Event.current; Rect contextRect = new Rect(10, 10, 100, 100); EditorGUI.DrawRect(contextRect, Color.green);

if (currentEvent.type == EventType.ContextClick) { Vector2 mousePos = currentEvent.mousePosition; if (contextRect.Contains(mousePos)) { // Now create the menu, add items and show it GenericMenu menu = new GenericMenu(); menu.AddItem(new GUIContent("MenuItem1"), false, Callback, "item 1"); menu.AddItem(new GUIContent("MenuItem2"), false, Callback, "item 2"); menu.AddSeparator(""); menu.AddItem(new GUIContent("SubMenu/MenuItem3"), false, Callback, "item 3"); menu.ShowAsContext(); currentEvent.Use(); } } } }

Открытые функции

AddDisabledItemДобавляет отключенный пункт меню.
AddItemДобавляет пункт меню.
AddSeparatorДобавляет разделитель пунктов меню.
DropDownПоказывает меню в заданном на экране прямоугольнике.
GetItemCountВозвращает количество пунктов меню.
ShowAsContextПоказывает меню под мышкой.

Делегаты

MenuFunctionФункция обратного вызова. Вызывается при выборе пункта меню.
MenuFunction2Функция обратного вызова с информацией пользователя. Вызывается при выборе пункта меню.