Создание пользовательских объектов — КиберПедия 

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...

Создание пользовательских объектов

2017-06-19 124
Создание пользовательских объектов 0.00 из 5.00 0 оценок
Заказать работу

Flash5 позволяет создавать и пользовательские объекты. Это существенно облегчает написание программы так как информация группируется.

Свойствами объектов могут быть данные любого типа, в том числе и объекты, которые сами могут иметь свойства. Этим достигается возможность вкладывать объекты друг в друга. Например, пусть существует объект cko, имеющий свойство group.Свойство group само является объектом имеющим свойство pupil. Тогда, для указания последнего свойства необходимо записать

cko.group.pupil

Тут невольно напрашивается аналогия с вложением экземпляров Movie Clip. В Flash 5 экземпляры Movie Clip считают отдельным типом данных, наравне с числами, текстовыми строками и логическими. Переменных, экземпляры других клипов, хранящихся в данном можно считать его свойствами.

Таким образом, если в на сцене находится экземпляр клипа с Instance Name «cl», содержащий переменную x=1 то для того что бы переменной y присвоить значение x, необходимо исполнить скрипт y=cl.x;(например, создать на сцене кнопку содержащую скрипт on (release) { x = q.z;})

Для более уверенного исследования объектов нам придётся разобраться ещё с одним нововведением flash5.

Функции.

В Flash4 роль вызова функции исполнял скрипт call. В пятой версии появились полноценные возможности создания и использования пользовательских функции. Начнём с простого. Функцию можно рассматривать как часть скрипта обозначенная уникальным именем, которая может быть выполнена в любой момент. Для создания функции используется ключевое слово function(). В скобках могут находиться аргументы функции (об этом чуть позже) но даже если аргументов нет, пустые скобки всё равно должны быть.

function fu(){y=x; }

x=1;

fu()

В первой строке примера создаётся функция fu(), не содержащая аргументов. Тело функции берётся в фигурные скобки. В данном случае функция присваивает переменной y значение переменной x

Во второй и третьей строках примера находится собственно основная программа.

Создаётся переменная x и вызывается функция fu().

Данный скрипт эквивалентен следующему

x=1;

y=x;

Упражнение

А можно ли создать функцию уже после основной программы?

Если функция принадлежит экземпляру Movie Clip можно ли её использовать на основной линейке?

Функция может сама содержать какое-либо значение. Для присвоения функции значения используется ключевое слово return. В данном примере функция примет значение 4, которое в последней строке программы присвоится переменной z

 

function fu(){y=x; return 2*2}

x=1;

z=fu()

 

В результате имеем

x=1

y=1

z=4

Упражнение

Что будет, если в описании функции отсутствует return, а функция используется в операторе присвоения?

Может ли функция возвращать ссылку на саму себя? Может это прекрасно используется в рекурсиях. Только не исполняйте бессмысленный скрипт

function fu(){y=x; return fu()}

x=1;

z=fu()

Иначе Вам придётся немножко повисеть.

Теперь перейдём к обсуждению аргументов функции. При добавлении аргумента x в первоначальный пример результат действия скрипта будет прежним.

function fu (x) {y = x; }

x = 1;

fu(x);

x=1

y=1

В качестве аргумента, при вызове функции, теперь можно использовать не только имя переменной но и выражение, например, fu(2*2)

Однако, теперь переменная x внутри тела функции является локальной, т.е. лишь копией переменной x основной программы. Если изменить значение x внутри тела функции, x в программе не изменится.

function fu (x) {y = x; x=2;}

x = 1;

fu(x);

x=1

y=1

И последнее. Иногда требуется использование новых локальных переменных внутри функции. При обычном создании переменной она будет доступна как в функции так и за её пределами. Например, после выполнения скрипта

function fu () {y = x;i=2;}

x = 1;

fu();

i=i*2

на основной линейке возникнет переменная i=4. Однако, если использовать ключевое слово var, то под i внутри тела функции будет выделена отдельная область памяти.

function fu () {var i; y = x;i=2;}

x = 1;

fu();

i=i*2

В результате действия приведённого скрипта переменная i на основной линейке возникает лишь при выполнении последней строки программы и, следовательно, равна нулю.

Вот и всё о функциях. Вернёмся к пользовательским объектам.

Создание объектов

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

Предположим необходимо оперировать в ролике данными о обучающихся группах. Каждая группа характеризуется названием курса и количеством человек. Эти данные и будут свойствами объекта группа. Конструктор будет выглядить так.

function group(course, number)

{ this.course = course;

this.number = number; }

Ключевое слово this показывает, что course и number являются не просто переменными, а свойствами. При исполнении данного скрипта в памяти не создаётся никаких конкретных переменных. Это напоминает создание эталона (Symbol). Пока не созданы на сцене экземпляры по данному эталону, он хранится лишь в библиотеке. В объектном программировании аналоги эталонов называют классами, а конструкторы – конструкторами классов. Теперь создадим конкретные экземпляры групп (объекта). Для этого потребуется ключевое слово new

g1= new group("flash",10);

g2= new group("internet",12)

Итак, созданы 2 объекта с именами g1 и g2. Теперь можно получить доступ к их свойствам. Например, для увеличения количества человек в группе flash потребуется выполнить скрипт

g1.number+=1;

для создания метода, например, сокращающего количество человек в группе в конструктор необходимо добавить строку

this.reduce = function() {this.number-=1;}

тогда данный метод может быть вызван для конкретной группы. Например

g2.reduce();

сократит количество человек в группе g2.

Упражнение

Пусть необходимо рассчитать площади и периметры множества прямоугольников.

Создать класс rectan, содержащий свойства he и wi, которые будут хранить высоту и ширину прямоугольника, и методы ar и pe, вычисляющие площадь и периметр прямоугольников. Создать несколько объектов данного класса.

Решение может иметь вид:

function rect(he,wi){

this.he=he;

this.wi=wi;

this.ar=function(){return this.he*this.wi;}

this.pe=function(){return 2*(this.he+this.wi);}

}

r1=new rect(2,3);

r2=new rect(5,5);

x=r1.ar();

y=r2.pe();

В последних двух строках переменной x присваивается площадь первого прямоугольника а переменной у – периметр второго. В отличие от предыдущего примера методы не изменяют значения свойств а сами возвращают результаты вычислений. Для этого пришлось использовать в методах return.

Технология включения метода в конструктор класса имеет существенный недостаток.

Если посмотреть листинг переменных, то можно заметить, что функции ar и pe возникли в каждом из объектов r1 и r2.

Level #0:

Variable _level0.$version = "WIN 5,0,30,0"

Variable _level0.rect = [function]

Variable _level0.r1 = [object #2] {

he:2,

wi:3,

ar:[function],

pe:[function]

}

Variable _level0.r2 = [object #5] {

he:5,

wi:5,

ar:[function],

pe:[function]

}

Variable _level0.x = 6

Variable _level0.y = 20

Это означает неэкономное расходование ресурсов, так как функцию pe объекта r1 мы не использовали. Для устранения данного недостатка можно использовать механизм наследования

Дело в том, что при создании нового класса автоматически для него создаётся новое свойство prototype, которое также является классом. Все методы и свойства класса prototype становятся доступными и для создаваемого класса. Определим методы ar и pe для класса prototype, принадлежащему создаваемому классу rect.

function rect(he,wi){

this.he=he;

this.wi=wi;}

rect.prototype.ar=function(){return this.he*this.wi;}

rect.prototype.pe=function(){return 2*(this.he+this.wi);}

r1=new rect(2,3);

r2=new rect(5,5);

x=r1.ar();

y=r2.pe();

при вызове методов ar и pe они не были найдены в классе rect но найдены в классе prototype. При просмотре списка переменных можно заметить, что функции ar и pe не принадлежат объектам r1 и r2, однако могут быть вызваны.

 

Level #0:

Variable _level0.$version = "WIN 5,0,30,0"

Variable _level0.rect = [function]

Variable _level0.r1 = [object #2] {

he:2,

wi:3

}

Variable _level0.r2 = [object #3] {

he:5,

wi:5

}

Variable _level0.x = 6

Variable _level0.y = 20

Механизм наследования широко используется в объектно-ориентированном программировании. В данном случае класс rect можно считать потомком класса prototype, а класс prototype является родительским для класса rect. Важно понимать, что поиск свойства или метода в родительском классе осуществляется лишь в том случае, если их нет в текущем классе. Следовательно, если и в потомке и в родительском классе определены одноимённые методы или свойства, то потомок имеет приоритет. В данном примере методы ar и pe определены как в родителе так и в потомке, причём в последнем к результату добавлены единицы измерения.

function rect(he,wi){

this.he=he;

this.wi=wi;

this.ar=function(){return this.he*this.wi+" кв. м";}

this.pe=function(){return 2*(this.he+this.wi)+" м";}

}

rect.prototype.ar=function(){return this.he*this.wi;}

rect.prototype.pe=function(){return 2*(this.he+this.wi);}

r1=new rect(2,3);

r2=new rect(5,5);

x=r1.ar();

y=r2.pe();

После исполнения скрипта переменные примут значения

Variable _level0.x = "6 кв. м"

Variable _level0.y = "20 м"

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

cir={ra:10,color:"red"}

В данном случае создаётся объект cir, имеющий свойства ra и color.

Теперь, кода с пользовательскими объектами и классами возникла, надеюсь, некоторая ясность, перейдём к более детальному рассмотрению предопределённых классов.

 

Перехват нажатий клавиш клавиатуры

Проще некуда! Объекту Key принадлежат методы Key.getCode(); и Key. getAscii();

Первый возвращает значение нажатой клавиши в десятичном формате (Dec), а второй в ASCII.

Dec-код имеется у каждой физической клавиши на клавиатуре. Например, клавиша стрелки "влево" имеет Dec# 37. Используя Dec-код, можно гарантировать, что средства управления клипа будут одинаковыми на любой клавиатуре, независимо от языка или платформы.

ASCII (American Standard Code for Information Interchange) значения связаны с первыми 127 символами каждой кодовой таблицы. Они обеспечивают информацию о символе на экране. Например, символ "A" и символ "a" имеют различные значения ASCII.

Проверку нажатий клавиатуры, конечно, можно производить в каждом кадре ролика, но это неразумно не каждый пользователь способен колотить по клавиатуре со скоростью 12fps. Существует специальное событие клипа keyDown Которао активизирует свой скрипт при нажатии клавиатуры. С ним обычно и связывают данные методы.

Пример. Создайте экземпляр клипа и прикрепите к нему скрипт

onClipEvent(keyDown) {

trace(Key.getCode());

}

после запуска ролика понажимайте на клавиши.

Пример. Необходимо что бы при нажатии пробела появилось окно output с текстом ok. Пробел имеет Dec-код 32 (см таблицу кодов клавиатуры в приложении)

Прикрепите к клипу скрипт

onClipEvent(keyDown) {

if (Key.getCode() == 32) {

trace(“ok”)

}

}

упражнение

Создать ролик в котором стрелки клавиатуры передвигали бы клип, комбинации стрелок с shift передвигали бы быстрее, а комбинации с ctrl – изменяли бы размер клипа. Пробел должен восстанавливать исходные параметры клипа.

 

Управление цветом клипа

 

Наконец то сбылась мечта флэшеров! Теперь командами скрипта можно управлять цверовым оттенком клипа. В четвёртой версии приходилось создавать три экземпляра разных цветов, накладывать их друг на друга и устанавливать соответствующие значения прозрачности. К счастью эта технология в прошлом, так как появились методы, и setTransform, принадлежащие объекту Color. setRGB задает шестнадцатеричное RGB (red, green, blue) значение цвета объекта, а метод setTransform устанавливает процент и значения смещений для красного, зеленого, синего и степень прозрачности альфа канала. Аргументом метода setRGB является шестнадцатеричное число два первых регистра которого устанавливают красный цвет, два вторых – зелёный, а два третих синий. например, cc66ff, или 0033cc. Однако, сразу данный метод вызывать нельзя, как это мы делали с методами объектов Math или Mouse. Экземпляров клипа на сцене может быть множество. (в отличие от мыши, которая по моим наблюдениям у компьютера, как правило, одна) и flash не знает к какому именно применять метод. Именно поэтому и необходим конструктор, который свяжет с конкретным экземпляром клипа набор методов класса. Создайте экземпляр клипа с произвольным именем, например cl и к кадру ролика прикрепите скрипт

c = new Color(_root.cl);

Теперь объект с – хранит методы, которые смогут воздействовать на клип cl.

Для ввода данных в шестнадцатеричной форме можно использовать запись формата 0xRRGGBB, например, команда

c.setRGB(0x0000ff);

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

parseInt(«текст формата RRGGBB», 16)

Создайте на сцене текстовое поле для ввода (в четвёртом Flash в динамические текстовые поля можно было вводить данные, а в пятом – для ввода используются особые поля типа Input Text. Разницы никакой. Таким полям, всё равно, можно назначить текстовую переменную в диалоге Text Options) и назначьте ему переменную, например t. Создайте кнопку и прикрепите к ней скрипт

on(release) {

c.setRGB(parseInt(t, 16));

}


Ролик готов. Запустите его, введите в текстовое поле число, например ff0000 и нажмите кнопку. Клип изменит цвет, в данном случае станет красным.

 

AttachMovie

Ещё одно достойное нововведение Flash5. Многие эффекты во Flash4 требовали создания множества экземпляров клипа. Для этого использовалась команда DuplicateMovieClip, которая создавала копию экземпляра на основе уже имеющегося экземпляра. Достаточно вспомнить пример Снег. Для использования данной команды необходимо было иметь хотя бы один экземпляр копируемого клипа. Авторам часто приходилось скрывать его, выводя за пределы сцены или устанавливая нулевую видимость или абсолютную прозрачность. Появление новой функции AttachMovie позволило избежать этих лишних действий так как теперь можно копировать непосредственно из библиотеки эталонов.

Однако, команда DuplicateMovieClip в качестве одного из своих аргументов требовала Instance Name клипа, копия которого создаётся. Instance Name, как известно нельзя присвоить эталону в библиотеке. Поэтому, для идентификации эталона, разработчикам пришлось добавить возможность назначать эталонам специальные идентификаторы, по которым функция AttachMovie сможет к ним обращаться. Идентификатор вводится в поле Identifier диалогового окна Symbol Linkage Properties, которое можно вызвать, щёлкнув по эталону в окне библиотеки правой кнопкой мыши и выбрав Linkage.

Ещё одно существенное замечание. AttachMovie не является командой Flash, а методом объекта MoviClip. Поэтому её синтаксис выглядит так

MyMovieClip.attachMovie(идентификатор, имя создаваемого экземпляра, слой клипа) В то время как синтаксис команды DuclicateMovieClip выглядит как

DuclicateMovieClip (имя клипа который копируется, имя создаваемого клипа, слой клипа).

Клип, метод которого используется и будет содержать в себе создаваемый новый экземпляр. Если необходимо, что бы новый экземпляр возник на основной линейке, необходимо использовать _root т.е.

_root.AttachMovie…

 


Рассмотрим простейший пример. Пусть кнопка будет выводить на сцену изображение плавающей рыбки. Воспользуемся стандартными библиотеками. Создайте новый ролик. Вызовите окно Window-Common Libraries-Buttons и вытащите на сцену экземпляр понравившейся кнопки. Вызовите Window-Common Libraries-Movie Clips и открыв окно библиотеки данного ролика (Ctrl-L) перетащите в него эталон клипа Fish.

В окне библиотеки ролика появится сразу множество значков. Не пугайтесь, просто клип Fish содержит в себе несколько клипов типа Graphic. Главное, на сцене пока нет экземпляров клипа. Присвойте эталону клипа Fish Movie Clip идентификатор f описанным выше способом.

Прикрепите к кнопке следующий скрипт

on (release) {

_root.attachMovie("f", "ff", 1);

}

Упражнение.

Попробуем повторить ролик снег с учётом возможностей пятого Flash. Для начала, создайте эталон падающей по маршруту снежинки и присвойте эталону идентификатор.

Так как необходимо в каждом кадре ролика получать новую снежинку придётся управляющий скрипт прикреплять к клипу с событием Enterframe.

Создайте на сцене экземпляр нового книпа, изображающего, например облако и прикрепите к нему следующий скрипт

onClipEvent (enterFrame) {

i+=1;

n="s"+i;

_root.attachMovie("s", n, i);

eval("_root."+n)._x=Math.random()*400;

}

eval позволяет казать на объект, использую в качестве аргумента текстовое выражение сложенное их текста «_root» и значения переменной n хранящей имя очередного экземпляра снежинки. Для уничтожения «отработавших» экземпляров снежинок присвойте последнему кадру анимации снежинки скрипт

removeMovieClip (this);

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

 

Управление звуком

Все прежние средства использования звуков остаются в Вашем распоряжении и в новой версии Flash. Вы можете включать в ролик потоковый фоновый звук, присваивать звуки кнопкам. Однако появилось и кое что новое. Теперь командами скрипта можно управлять громкостью и балансом. При этом звук теперь не обязательно присваивать кадру. Он лишь должен быть импортирован в библиотеку и ему должен быть присвоен идентификатор, как эталону клипа для метода AttachMovie. Для импорта звука выберите в меню File команду Import и укажите требуемый звук. В окне библиотеки на значке звука щёлкните правой кнопкой мыши и выберите Linkage. Введите идентификатор, например, “so” в соответствующее текстовое поле. Теперь необходимо использовать конструктор класса Sound. Кадру ролика присвойте скрипт.

s = new Sound();

s.attachSound("so");

 

Первая команда создаёт объект Sound, а вторая – связывает объект с конкретным звуком. Теперь все методы объекта so будут управлять данным звуком. Наиболее популярныме методы

s.start(); s.stop(); s.setvolume(t); s.setpan(x);

создайте на сцене 4 кнопки и 2 текстовых поля для ввода с переменными t и x. Присвойте кнопкам вызовы соответствующих методов, напимер,

on(release){

s.start();}

Проиграйте ролик. Подробное описание методов смотрите в приложении.

 

Работа с датами и временем

Как и с пользовательскими классами, для получения доступа к свойствам и методам предопределённого класса необходимо создать объект оператором new. Например,

d=new date();

создаёт на основе класса date объект d. Теперь возможен доступ к свойствам и методам объекта d, например,

x=d.getYear()

присвоит переменной x значение текущего года.

Если при создании объекта никаких аргументов не указывалось, то текущее время объекта равно системному. В частности, скрипт

x = (d.getMonth() + "/" + d.getDate() + "/" + d.getFullYear());

приведёт к результату если текущее время – 31 января 2001 года

x = "0/31/2001"

обратите внимание, что месяца отсчитываются от нуля.

При создании объекта можно указать определённую дату и время в формате

new Date(year [, month [, date [, hour [, minute [, second [, millisecond ]]]]]]);

При этом объект будет хранить фиксированные значения даты или времени.

Например,

victory = new Date(1945,4,9);

Упражнение

Создать ролик – Электронные часы с будильником. В текстовых полях должны выводиться текущий год, месяц, число, день недели, час, минута, секунды. Будильник должен уметь звонить в указанное время.

 

V. Использование Отладчика

Отладчик позволяет находить ошибки в клипе, во время его воспроизведения во Flash Player. Можно просматривать всю внутреннюю структуру основного и подгружаемых клипов и изменять значения переменных и свойств, чтобы определить их правильные значения. Затем можно вернуться к скриптам и отредактировать их с учетом результатов, полученных при отладке. Для использования Отладчика, необходимо запустить Flash Debug Player, специальную версию Flash Player.

Flash Debug Player устанавливается автоматически при инсталляции пакета Flash 5. Он позволяет в своем окне просматривать список объектов и пары: переменные - их значение и свойства - из значения.

Для включения Отладчика:

Выбрать Window > Debugger.

Это открывает Отладчик в неактивном состоянии. Никакая информация не появится в его окне, пока не будет выдана команда от Flash Player.

Для активизации Отладчика в режиме тестирования:

Выбрать Control > Debug Movie.

Это откроет Отладчик в активном состоянии.

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

Вкладка Variables (Переменные) в Отладчике отображает имена и значения любых переменных в клипе. Если изменить значение переменной во вкладке Variables, то это изменение в реальном времени отразится в воспроизводимом в данный момент клипе. Например, чтобы сделать проверку на пересечение в игре, можно ввести значение соответствующей переменной для позиционирования шара рядом со стенкой.

Показ переменных:

1 Выберите клип, содержащий переменную, в окне со списком объектов.

2 Нажмите на вкладку Variables.

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

Изменение значения переменной:

Выделите значение и введите новое.

Значение должно быть постоянным значением (например, "Hello", 3523 или "http://www.macromedia.com"), не выражением (например, x + 2 или eval("name:" +i)). Значение может быть строкой (любое значение, заключенное в кавычки ("")), числом или булеаном (true или false).

Переменные Object (Объекта) и Array (Массива) отображаются во вкладке Variables. Нажмите на Add (+) кнопку, чтобы видеть их свойства и значения. Однако, вводить значения объекта или массива (например, {name: "I am an object"} или [1, 2, 3]) в полях их значений нельзя.

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

Только переменные могут быть добавлены в список Watch, свойства или функции не могут.

Для добавления переменных в список Watch, сделайте одно из следующего:

Во вкладке Variables, right-click (Windows) или Control-click (Macintosh) на нужной переменной и выбрать Watch в открывшемся контекстном меню. Рядом с переменной появится синяя точка.

Во вкладке Watch, right-click (Windows) или Control-click (Macintosh) и выбрать Add в открывшемся контекстном меню. Ввести имя переменной и ее значение в соответствующие ячейки.

Удаление переменной из списка Watch:

Во вкладке Watch, right-click (Windows) или Control-click (Macintosh) и выбрать Remove в открывшемся контекстном меню.

VI. Смарт-клипы

Смарт – клип представляет собой особый тип клипа, определённые параметры которого могут изменяться. Эти параметры используются скриптом и изменяют поведение клипа

Для того что бы создать смарт- клип, необходимо в библиотеке эталонов указать изменяемые параметры. Вы можете создавать команды скрипта, которые будут использовать данные параметры также как функции используют свои аргументы. Вы имеете возможность выделить экземпляр смарт-клипа на сцене и с помощью панели Clip Parameters изменить значения параметров. Во время проигрывания ролика параметры, установленные помощью панели Clip Parameters передаются клипу ещё до того как начинают исполняться команды Action Script.

Смарт-клипы очень полезны при передаче ролика программистом дизайнеру. Программист может написать скрипт с переменными, определяющими поведения ролика. Дизайнер может изменять значения этих переменных, не касаясь редактора скрипта.

Вы можете использовать смарт-клипы для создания элементов интерфейса смарт клипы полезны, когда необходимо использовать один и тот же ролик разными путями без изменения скрипта.

Более того, для облегчения работы дизайнера вы можете создать собственный интерфейс для изменения параметров смарт-клипов!

Определение параметров смарт-клипа

Любой эталон, для которого определён хотя бы один параметр, автоматически становится смарт-клипом. Параметры смарт-клипа передаются ему в момент загрузки ролика. При создании ролика Вы определяете эти параметры. Смарт-клипы в окне библиотеки обозначаются особым значком

Для определения параметров смарт-клипа необходимо:

Щёлкнуть по значку эталона в окне библиотеки правой кнопкой мыши и выбрать Define Clip Parameters.

 

 

 


Для добавления нового параметра используйте +. – для удаления, стрелки для изменения последовательности. Двойной щелчок по полю позволит изменить его значение. В поле Name вводится уникальное имя параметра, Значение default в поле Type означает текст или число. Другие типы данных – массив или объект, можно выбрать из раскрывающегося списка. Если выбрать List, то появляется возможность ограничить значения параметра фиксированным списком. Если при установленном типе List сделать двойной щелчок по значению

Параметра, то появится диалог создания фиксированного списка значений.

Кнопки управления списком тут те же, что и в предыдущем диалоге. Номер значения по умолчанию указывается в верхнем правом текстовом поле.

 

В поле Description можно ввести комментарий, поясняющий назначение каждого из параметров. Флажок Lock in Instance запрещает пользователю с помощью панели Clip Parameters изменять имена параметров. Если для изменения параметров будет применяться пользовательский интерфейс, то кнопкой Link to custom UI можно установить ссылку на swf-файл пользовательского интерфейса.

 


Поделиться с друзьями:

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

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.15 с.