Увольнение модального диалога с помощью клавиши ESC

У меня есть диалоговое окно в моем приложении, которое создается с помощью CreateStandardAlert / RunStandardAlert. В настоящее время моя кнопка «ОК» отвечает на клавишу возврата, но Escape ничего не делает. Читая документацию, он говорит, что модальные диалоги должны реагировать на Escape, но это не так. Нужно ли указывать filterProc при вызове RunStandardAlert (в настоящее время я установил его на 0) или проблема, скорее всего, где-то еще в моем коде?

1

Решение

Я предполагаю, что в вашем диалоге нет кнопки «Отмена», которая обычно реагирует на Escape. Я не уверен, что ожидается, что кнопка OK должна реагировать на Escape. Вы могли бы использовать SetDialogCancelItem если бы вы могли найти номер элемента кнопки.

1

Другие решения

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

alertParams.cancelText      = (CFStringRef) kAlertDefaultCancelText;
alertParams.cancelButton    = kAlertStdAlertCancelButton;

(это после заполнения alertParams с использованием GetStandardAlertDefaultParams)

0

По вопросам рекламы [email protected]