Пример использования метода prompt () представлен в листинге 3.3.
Листинг 3.3. Использование метода prompt ()
var getValues = prompt("Укажите ширину.текстового фрейма,\па также его высоту: ", "25, 25");
var sValues = getValues.split(", ") ;
// Значения в массиве разделены var myWidth = sValues[0]; var myHeight = sValues[l]; Основные действия при использовании prompt () - разбор строки, введенной пользователем (поскольку строка представляет собой массив символов, отделенных друг от друга разделителем), и дальнейшее использование полученных значений.
3.2. Расширенные методы
Использование развитых интерактивных средств общения с пользователями предоставляет гораздо большую гибкость, поскольку позволяет создавать скрипты любой степени сложности.
Пользовательские диалоги с точки зрения объектной модели- типичные объекты InDesign (dialogs), которые имеют свои характеристики (свойства) и возможности (методы). Дня создания нового окна служит метод addo, который является универсальным для добавления любых объектов. Круглые скобки в названии любого метода обязательны: это, во-первых, отличительный признак метода от свойства, и, во-вторых, в них часто уточняется способ действия (передаются параметры). Если же никаких уточняющих параметров нет, скобки остаются пустыми.
По большому счету, метод -• эта обычная функция, которой в качестве параметров как раз и передается содержимое в круглых скобках.
JavaScript позволяет в момент создания нового объекта задать "на лету" его свойства, которые заключаются в круглые скобки, при этом знак присвоения (=) меняется на двоеточие.
myObjects.add({firstProperty: firstPropertyValue, secondProperty: secondPropertyValue …})
Содержимое окна рассматривается как одна большая таблица, состоящая из строк (создаются методом diaiogColumns.addo), которые, в свою очередь, состоят из столбцов (метод dialogRows. add ()). Каждую образующуюся таким образом ячейку можно рассматривать как новую таблицу, что позволяет создавать диалоговые окна неограниченной сложности.
В громоздких окнах связанные элементы можно объединять в отдельные группы (borderPaneis. add ()), которые отображаются как рельефные области.
Каждый элемент управления в окне диалога- отдельный объект. Все они делятся на типы, перечисленные в табл. 3.1.
Таблица 3.1. Типы элементов управления в диалоговом окне
Тип |
Назначение |
Название |
Статический текст |
Вывод названия элемента управления |
Text EditBox |
Числовое поле |
Задание значения |
Real EditBox Integer EditBox Measurement EditBox Percent EditBox Angle EditBox |
Раскрывающийся список |
Вывод доступных опций |
dropdowns |
Элемент, объединяющий статический текст с раскрывающимся списком |
Вывод доступных опций и ввод значения, отсутствующего в списке |
comboboxControls |
Переключатель |
Обычно твкие элементы организуются в группу, в которой может быть выбран только один переключвтель |
radiobuttonControls |
Флажок |
Установка или сброс опции |
checkbox Controls |
Управляющие кнопки (к ним доступ пользователю закрыт, переназначать их действие нельзя) |
Передача данных скрипту или прекращение его выполнения |
OK, Cancel |
Каждый объект диалогового окна имеет методы и свойства, отражающие его специфику. Например, объект checkbox имеет свойство, в котором хранится текст названия элемента управления (staticLabel) и отдельно- состояние фдажка (checkedstate); содержимое раскрывающегося списка имеет свойство selectedindex, которое показывает, какой элемент списка будет по умолчанию активным, и т. д. (кто занимался дизайном Web-страниц, найдет много общего с HTML-формами).