Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ActionScript 2.0 ЛР.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆

Загрузка фильмов

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

loadMovieNum ( имя файла, номер уровня );

Например код:

loadMovieNum ( "vesti.swf", 1 );

загружает ролик vesti.swf в уровень 1. Для обращения к нему (например, для перемещения) нужно использовать адрес _level1. Однако это можно делать только в следующем кадре, иначе фильм не успеет загрузиться.

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

  1. Откройте файл tv.fla, создайте слой Программа и добавьте в первый кадр код

chNames = ["vesti.swf", "sport.swf", "ctc.swf"];

MAX = chNames.length;

loadChannels();

function loadChannels() {

for ( i = 1; i <= MAX; i++ )

loadMovieNum ( chNames[i-1], i );

}

Сначала в массив chNames записываются имена файлов, в которых находятся ролики, изображающие телевизионные каналы. Эти файлы расположены в папке ЛР, там же, где и основной файл, поэтому не нужно указывать путь, достаточно имени файла.

Далее для удобства записываем длину массива (число каналов) в переменную MAX и вызываем функцию loadChannels, которая загружает ролики в память на уровни 1, 2 и 3. Обратите внимание, что в цикле при обращении к массиву использован индекс i-1, поскольку номера элементов массивов начинаются с нуля.

Если запустить и просмотреть ролик, мы ничего не увидим, потому что в первом кадре каждого из внешних фильмов стоит команда

_visible = false;

Это сделано специально, иначе все ролики сразу после загрузки появятся в левом верхнем углу экрана.

Работать с уровнями _level1, _level2 и _level3 пока нельзя, поскольку они будут полностью загружены только к началу следующего кадра.

Использование Переменных

Различают три типа переменных:

  • локальные переменные, которые объявляются внутри функции с помощью слова var;

  • переменные временной шкалы (переменные клипа), которые связаны с клипом и могут рассматриваться как его свойства;

  • глобальные переменные, которые можно использовать без указания адреса из любого места в программе.

Локальные переменные

Локальные переменные действует только внутри функции, они объявляются с помощью слова var. Например, здесь переменные qq, x и s — локальные:

function A() {

var qq;

var x: Number, s: String;

...

}

Тип переменной qq не определен, в нее можно записывать любые данные. Для переменных x и s использован строгий стиль описания: с указанием типа. При попытке записи в такие переменные значения другого типа появится сообщение об ошибке. Кроме того, если тип переменной точно указан, при наборе ее имени в редакторе кода появляется окно с подсказками, в котором перечислены все свойства и методы, применимые к этому типу данных.

Существуют три простых типа данных

  • Number — число;

  • Boolean — логическое значение (true или false);

  • String — символьная строка.

Переменные могут принимать два специальных значения:

  • null — особое нулевое значение;

  • undefined — значение переменной не определено.

В примере

var q;

trace ( x );

trace ( q );

в окно Output выдается два раза результат undefined, поскольку переменная x вообще неизвестна, а q объявлена, но никакое значение ей не присвоено.

Переменные типа Object могут хранить ссылки на объекты (например, клипы), то есть, их адреса. Например, если разместить следующий код в любом кадре главной временной шкалы

var x: Object;

x = this;

trace(x);

в окно Output выводится _level0, то есть переменная x ссылается на главный монтажный стол.

Переменные клипа

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

myClip.x = 10;

Если же код стоит внутри обработчика события клипа, можно написать this.x=10; или просто x=10, этот прием мы неоднократно использовали.

Глобальные переменные

Глобальные переменные вводятся с помощью слова _global:

_global.x = true;

К переменной x теперь можно обращаться с любого монтажного стола, она одна на всех. Чтобы не запутаться с глобальными переменными, им часто дают имена, начинающиеся с буквы g, например, gPower.

Функции

Общие сведения

Функции предназначены для того, чтобы не писать несколько раз одинаковый код — вместо этого просто вызывается функция.

Функции объявляются с помощью слова function:

function qq() {

...

}

Имя этой функции — qq, при ее вызове qq(); выполняются все команды внутри фигурных скобок. Многоточие здесь и далее означает любой код на ActionScript.

Функция может принимать параметры или аргументы — они перечисляются через запятую в скобках:

function qq ( x ) { ... }

function ww ( x:Number, s:String ) { ... }

Функция qq принимает один параметр, его тип может быть любой. Функция ww принимает два параметра, причем их типы жестко заданы: первый — число, второй — символьная строка.

Функция может возвращать результат (число, строку, логическое значение и т.д.) с помощью оператора return. Например:

function Sum ( x, y ) {

var s = x + y;

return s; // или return x + y;

}

Чтобы использовать это значение, надо записать его в переменную:

w = Sum ( 2, 3 );

trace ( w );

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]