установка кнопки по умолчанию в предварительной инициализации - PullRequest
0 голосов
/ 29 июля 2011

У меня более одного контейнера в представлении. Я пытаюсь установить кнопку по умолчанию в момент загрузки страницы, чтобы при нажатии клавиши ввода вызывалась функция обработки нажатия клавиши. Если я просто установлю кнопку по умолчанию в функции preinit (), она не будет работать.

Как я могу это сделать?

Ответы [ 2 ]

0 голосов
/ 29 июля 2011

Если я правильно понимаю ваш вопрос, вам нужно сделать две вещи, чтобы сделать эту работу.

  1. Установка кнопки по умолчанию
  2. Установить фокус на контейнер или некоторый дочерний элемент контейнера

Как сказал @Flextras, preinit также может быть не лучшим выбором для этого.

Если контейнер объявлен в MXML, я рекомендую установить свойство defaultButton в объявлении MXML и установить фокус на creationComplete.

0 голосов
/ 29 июля 2011

Трудно отладить "Не работает" иногда. Но в этом случае я подозреваю, что вы получаете ошибку стиля «Нулевое значение».

Событие preinitialize вызывается перед createChildren (), поэтому, скорее всего, кнопка, которую вы хотите сделать «Default», еще не существует. Подробнее о Flex Component LifeCycle .

Вы можете переместить свой код в событие инициализации.

Я предполагаю, что под "установкой по умолчанию" вы подразумеваете, что используете FocusManager для фокусировки кнопки?

...