Поделиться через


Confirm функция

Применимо к: Приложения на основе модели, приложения Canvas

Используйте эту функцию для отображения диалогового окна подтверждения пользователю.

Описание

Функция Confirm отображает диалоговое окно в верхней части текущего экрана с двумя кнопками: кнопкой подтверждения и кнопкой отмены . В приложениях, управляемых моделью, эти кнопки по умолчанию локализуются в локализованных версиях "ОК" и "Отмена" соответственно. Confirm также доступен в приложениях холста для отображения простого диалогового окна подтверждения и возврата логического результата.

Пользователь должен выбрать одну из кнопок перед закрытием диалогового окна. Помимо нажатия кнопки "Отмена", диалоговое окно можно закрыть с помощью жестов для конкретной платформы (например, клавиши ESC или нажатия за пределами диалогового окна). В приложениях на основе холста этот путь закрытия рассматривается как отсутствие действия (т. е. возвращается blank).

Заметка

В приложениях холста Confirm функция использует диалоговое окно Fluent. Убедитесь, что современные элементы управления включены; В противном случае откроется диалоговое окно собственного браузера.

Синтаксис

Confirm( Message [, OptionsRecord ] )
  • Сообщение - Обязательно. Сообщение, отображаемое для пользователя.
  • OptionsRecord - Необязательно. Позволяет указать значения параметров для диалогового окна. Дополнительные сведения см. ниже.

Options

Используйте параметр OptionsRecord для настройки диалогового окна подтверждения:

Вариант Описание
ПодтвердитьКнопка Текст, отображаемый на кнопке подтверждения, заменяя локализованный по умолчанию текст "ОК" или "Confirm".
Кнопка отмены Текст, отображаемый на кнопке отмены, заменяя локализованный по умолчанию текст "Отмена".
Звание Текст, отображаемый в качестве заголовка диалогового окна. Отображается в более крупном полужирном шрифте, чем в сообщении. Это может быть усечено, если очень долго.
Подзаголовок Текст, отображаемый в качестве подзаголовок диалогового окна. Отображается между заголовком и сообщением. Это может быть усечено, если очень долго.

Поведение по умолчанию

Метки кнопки: Если вы не предоставляете пользовательские метки кнопок, Confirm использует локализованный текст кнопки по умолчанию:

  • В приложениях холста (предварительная версия) значения по умолчанию : "Confirm" и "Отмена" (локализованные).
  • В приложениях, управляемых моделью, значения по умолчанию — "ОК" и "Отмена" (локализованные).

Возвращаемое значение:Confirm возвращает значение true , если пользователь выбирает кнопку подтверждения и в false противном случае.

Примеры

Приложения на основе модели

Простое подтверждение перед удалением записи

If( Confirm( "Are you sure?" ), Remove( ThisItem ) )

Отображает диалоговое окно подтверждения с кнопками по умолчанию. Если пользователь выбирает кнопку подтверждения, запись удаляется.

Подтверждение с пользовательским заголовком

If( Confirm( "Are you sure?", { Title: "Delete Confirmation" } ), Remove( ThisItem ) )

Добавляет заголовок в диалоговое окно подтверждения перед удалением записи.

Пользовательские метки кнопки для предпочтения пользователя

Set( FavColor,
     If( Confirm( "What is your favorite color?",
                  { ConfirmButton: "Red", CancelButton: "Green" }
         ),
         "Red",
         "Green"
     )
)

Использует пользовательские метки кнопок для записи простых предпочтений. Результат хранится в глобальной переменной FavColor.

Confirm( "There was a problem, please review your order." )

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


Приложения на основе холста

Confirm перед удалением

Используйте Confirm для предотвращения случайного удаления записей:

// Button.OnSelect
If(
    Confirm(
        "Are you sure you want to delete this record?",
        {
            Title: "Delete confirmation",
            Subtitle: "This action can't be undone.",
            ConfirmButton: "Delete",
            CancelButton: "Cancel"
        }
    ),
    Remove(YourDataSource, Gallery1.Selected);
    Notify("Record deleted.", NotificationType.Success)
)

Отображает диалоговое окно подтверждения с заголовком, субтитрами и пользовательскими метками кнопки. Запись удаляется только в том случае, если пользователь выбирает "Удалить".

Confirm перед сохранением формы

Используйте Confirm для проверки намерения пользователя перед отправкой данных:

// Save button.OnSelect
If(
    Confirm(
        "Do you want to save these changes?",
        { Title: "Save changes" }
    ),
    SubmitForm(EditForm1);
    ResetForm(EditForm1);
    Notify("Changes saved successfully.", NotificationType.Success)
)

Отображает диалоговое окно подтверждения перед отправкой формы. Форма отправляется только в том случае, если пользователь подтверждает.

Сохранить результат переменной для нескольких действий

Сохраните результат подтверждения для использования в нескольких подчиненных операциях:

// Button.OnSelect
Set(
    varConfirmed,
    Confirm("Do you want to proceed with this operation?")
);

If(
    varConfirmed,
    Notify("Processing your request...", NotificationType.Information);
    /* Additional operations */,
    Notify("Operation canceled.", NotificationType.Warning)
)

Логический результат хранится в varConfirmed и может ссылаться несколько раз для условной логики.

Полная настройка со всеми параметрами

Продемонстрировать все доступные параметры настройки:

// Button.OnSelect
If(
    Confirm(
        "This is the main message that describes what the user needs to confirm.",
        {
            Title: "Action Required 🔔",
            Subtitle: "Please choose one of the options below.",
            ConfirmButton: "Yes, proceed",
            CancelButton: "No, cancel"
        }
    ),
    Notify("User confirmed!", NotificationType.Success),
    Notify("User canceled.", NotificationType.Warning)
)

Отображает полностью настраиваемое диалоговое окно с заголовком, субтитрами, сообщением и пользовательскими метками кнопки.

FAQs

Можно ли скрыть кнопку "Отмена"?

Нет. В текущем конструкторе всегда отображаются кнопки Confirm "Отмена". Пользователи должны иметь возможность закрыть или отменить диалоговое окно.

Можно ли добавить третью кнопку или более двух вариантов?

Нет. Confirm поддерживает ровно два варианта: действие подтверждения и действие отмены. Для сценариев, требующих нескольких вариантов, рассмотрите возможность использования другого шаблона пользовательского интерфейса, например пользовательского экрана или раскрывающегося списка.

Блокирует ли Confirm другие операции?

Да. Confirm отображается как модальное диалоговое окно, которое пользователь должен закрыть, прежде чем он сможет взаимодействовать с другими частями приложения.

См. также

Уведомление . Отображает не модальное сообщение баннера в верхней части экрана, в котором не требуется увольнение пользователя.