Unity 6.3
0 онлайн 79 гостей 3 в системе
Вход

EditorDialog.DisplayComplexDecisionDialog

Declaration

public static DialogResult DisplayComplexDecisionDialog(string titleText, string messageText, string defaultButtonText, string altButtonText, string cancelButtonText, DialogIconType iconType);

Параметры

Параметр Описание
titleText Название диалога. Если оставить null, по умолчанию будет "Unity".
messageText Сообщение, отображаемое в диалоговом окне.
defaultButtonText Текст, который будет отображаться на кнопке по умолчанию. Если оставить нулевым, по умолчанию будет «Да».
altButtonText Текст, который будет отображаться на альтернативной кнопке. Если оставить нулевым, по умолчанию будет "Нет".
cancelButtonText Текст, который будет отображаться на кнопке отмены. Если оставить нулевым, по умолчанию будет отображаться "Отмена".
iconType Значок для отображения в диалоговом окне. По умолчанию DialogIconType.Warning.

Возвращаемое значение

DialogResult Результат диалога. Возвращает DialogResult.Cancel, если пользователь нажал кнопку отмены, DialogResult.DefaultAction, если пользователь нажал кнопку по умолчанию, или DialogResult.AlternateAction, если пользователь нажал альтернативную кнопку.

Описание

Отображает диалоговое окно сложного решения с заголовком, значком, сообщением и тремя кнопками.

Если messageText является нулевым или пробелом, а ArgumentNullException брошен. Если messageText длина сообщения превышает 512 символов, оно обрезается и полное сообщение регистрируется в консоли в формате markdown.

Если текст любой кнопки длиннее 64 символов, ArgumentException брошена.

Если пользователь нажимает клавишу Enter (клавишу Return на macOS), кнопка по умолчанию нажимается. Альтернативная кнопка предназначена для дополнительных действий или для предоставления другого выбора, чем кнопка по умолчанию. Кнопка отмены закрывает диалоговое окно без выполнения каких-либо дальнейших действий. Если пользователь нажимает клавишу Эскапа или закрывает диалог, кнопка отмены нажимается. macOS, ориентация кнопок может быть горизонтальной или вертикальной в зависимости от длины сообщения. Кроме того, если расположение горизонтальное, расположение кнопок отличается от Windows или Linux, с кнопкой по умолчанию справа и альтернативной кнопкой слева.

В следующем примере показано, как отобразить диалоговое окно сложного решения со значком предупреждения, заголовком, сообщением и кнопками Да, Нет и Отменить:

using UnityEditor;
using UnityEngine;

namespace Examples { public class DisplayComplexDecisionDialogExamples : MonoBehaviour { [MenuItem("Window/EditorDialog Example/DisplayComplexDecisionDialog with all parameters specified")] public static void DisplayComplexDecisionDialogExample() { DialogResult userResponse = EditorDialog.DisplayComplexDecisionDialog( "Unity - Custom Title", "This is a test of the EditorDialog API. Please select an option below.", "Option", "Less Common Option", "Go Back", DialogIconType.Error);

Debug.Log(userResponse); }

[MenuItem("Window/EditorDialog Example/DisplayComplexDecisionDialog with defaults")] public static void DisplayComplexDecisionDialogSimpleExample() { DialogResult userResponse = EditorDialog.DisplayComplexDecisionDialog(null, "This is a test of the EditorDialog API with defaults. Please select an option below.", null, null, null); Debug.Log(userResponse); } } }

Создает следующие диалоговые окна на Windows 11 и macOS:

.