Свойство enabled позволяет разрешить или запретить пользователю нажимать кнопку. Оно имеет логический тип: значение true разрешает доступ к кнопке, а значение false — запрещает.
Свойство _visibie позволяет сделать кнопку видимой или невидимой. Оно имеет логический тип: значение true делает кнопку видимой, а значение false — невидимой. При этом невидимая кнопка также недоступна для нажатия.
Свойство useHandCursor задает, какую форму примет курсор мыши, если поместить его над кнопкой. Если задано значение true , то отображается курсор в виде "указующего перста" (как над гиперссылкой). Если же задано значение false , то курсор имеет вид обычной стрелки.
Известно, что обычные кнопки в окнах Windows-приложений можно нажимать, не только щелкая по ним мышью, но и нажимая клавишу основной клавиатуры. Для этого кнопка должна иметь фокус ввода , который даст ей возможность принимать нажатия клавиш клавиатуры. Кнопка, имеющая фокус ввода, выделяется точечным прямоугольником, окружающим ее надпись.
Фокус ввода можно перемещать с одной кнопки на другую, согласно особой последовательности, называемой порядком обхода. Каждая кнопка имеет свой уникальный номер в этом порядке. Для перехода на элемент управления с большим номером в порядке обхода нужно нажать клавишу <���Таb>, для перехода на элемент управления с меньшим номером — комбинацию клавиш +.
Для задания порядка обхода кнопок Flash служат два свойства объекта Button . Рассмотрим их.
Свойство tabindex задает номер в порядке обхода для данной кнопки. Значением этого свойства может быть любое целое неотрицательное число.
Задать порядок обхода можно с помощью приведенного ниже сценария, привязанного к первому кадру анимации фильма:
btnForward.tabindex = 0;
btnBackard.tabindex = 1;
btnStop.tabindex = 2;
Также для этого можно воспользоваться панелью Accessibility,подробно описанной в главе 20.
Если ни для одной кнопки в фильме Flash не задан номер в порядке обхода (т. е. значение свойства tabindex равно undefined ), Flash будет применять порядок обхода по умолчанию, и кнопки будут "обходиться" по нажатию клавиши <���Таb> в том порядке, в котором они были созданы на рабочем листе. Также нужно иметь в виду, что значение undefined меньше любого числового, поэтому кнопки, для которых свойство tabindex не было задано, будут в порядке обхода первыми.
Свойство tabEnabied позволяет вообще убрать кнопку из порядка обхода, после чего ей нельзя будет дать фокус ввода с помощью клавиатуры (хотя нажимать ее щелчком мыши будет можно). Это свойство имеет логический тип: значение true или undefined предоставляет возможность дать кнопке фокус ввода с помощью клавиатуры, а значение false такую возможность отменяет.
Обработка событий, возникающих в кнопках
Сценарий-обработчик события, возникающего в кнопке, как мы помним из главы 18, имеет такой формат записи:
on (<���Событие>) {
<���Тело обработчика>
}
Например:
on (press) {
_root.stop();
}
В данном примере обработчик выполняется в ответ на нажатие кнопки и останавливает анимацию основного фильма. Код этого обработчика должен быть привязан к самой кнопке.
Все события, поддерживаемые объектом Button , перечислены в табл. 19.11.
Создание и удаление кнопок из сценариев
Ранее в этой главе мы говорили, что имеется возможность создавать и удалять клипы из сценариев, пользуясь соответственно методами attachMovie и removeMovieClip объекта movieclip и аналогичными действиями. Такая возможность реализована и для кнопок. Так, мы можем создать на рабочем листе новую кнопку в процессе воспроизведения фильма, привязав к кадру анимации такой сценарий:
_root.attachMovie("button", "button2", 1);
А затем мы можем удалить эту кнопку:
_root.button2.removeMovieClip();
Работа с текстовыми блоками
Текстовые блоки, описанные в главе 7 , служат для отображения текста. Они бывают трех видов:
□ статические текстовые блоки, служащие для отображения текста, который не изменяется в процессе воспроизведения фильма или работы Flash-приложения. Это могут быть надписи, заголовки, инструкции и пр.;
Читать дальше
Конец ознакомительного отрывка
Купить книгу