Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

EditorGUIUtility.CommandEvent

Объявление

public static Event CommandEvent(string commandName);

Параметры

commandName Команда для отправки.

Описание

Создает событие, которое можно отправить в другое окно.

// Отправляет событие вставки в EditorWindow, как если бы Paste // был выбран в меню «Правка». using UnityEngine; using UnityEditor; public class CommandEventExample : EditorWindow { [MenuItem("Examples/CommandEvent example")] static void commandEventExample() { CommandEventExample window = EditorWindow.GetWindowWithRect(new Rect(0, 0, 150, 40)); window.Show(); } void OnGUI() { if (GUILayout.Button("Paste")) { Event e = EditorGUIUtility.CommandEvent("Paste"); EditorWindow ew = EditorWindow.GetWindow(true); ew.SendEvent(e); } } }

Приведенный ниже сценарий получает сообщение Paste, отправленное из CommandEventExample выше.

using UnityEngine; using UnityEditor; public class CommandEventTest : EditorWindow { private int eventCount = 0; [MenuItem("Examples/Example that receives a paste event")] static void test() { CommandEventTest window = EditorWindow.GetWindowWithRect(new Rect(0, 0, 100, 40)); window.Show(); } void OnGUI() { EditorGUI.LabelField(new Rect(10, 10, 90, 30), "Paste: " + eventCount.ToString()); if (Event.current.type == EventType.ExecuteCommand) { Event e = Event.current; if (e.commandName == "Paste") { eventCount = eventCount + 1; } } } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3