Руководство по actionscript. часть 3, стр. 138

Листинг 20.5. Обращение к экземпляру основного класса SWF-файла из потомков

package { import flash. display.*; import flash. geom.*;

public class Арр extends Sprite { public function Арр ( ) { // Создаем потомков… var rect:Shape = new Shape( ); rect. graphi cs.1i neSty1e(1); rect. graphics. beginFi11(OxOOOOFF, 1); rect. graphics. drawRect(0, 0, 75, 50); var sprite;Sprite = new Sprite( ); sprite. addChild(rect); addChiId(spnte);

// Используем выражение DisplayObject. root для обращения // к данному экземпляру класса Арр trace(rect. root); // Выводит: [object Арр] trace(sprite. root); // Выводит: [object Арр]

}

}

}

Когда объект находится в списке отображения, но не является потомком экземпляра основного класса SWF-файла, его переменная stage возвращает ссылку на экземпляр класса Stage. Например, следующий код модифицирует класс Арр из листинга 20.5 таким образом, чтобы объект Sprite и его дочерний объект Shape добавлялись непосредственно в экземпляр Stage. Поскольку объекты Sprite и Shape не являются потомками экземпляра основного класса SWF-файла, их переменные root ссылаются на экземпляр класса Stage.

package { import flash. display.*; import flash. geom.*;

public class App extends Sprite { public function App ( ) { var rect:Shape = new Shape( ); rect. graphi cs.1i neSty1e(1); rect. graphi cs. begi nFi11(OxOOOOFF, 1); rect. graphics. drawRect(0, 0, 75, 50); var sprite:Sprite = new Sprite( ); sprite. addChild(rect);

// Добавляем дочерний объект к экземпляру класса Stage, // а не к данному экземпляру класса Арр stage. addChi1d(spri te);

trace(rect. root); // Отображает: [object Stage] trace(sprite. root); // Отображает: [object Stage]

Для объектов, которые находятся в списке отображения, но не являются потомками эк-м?’ а * земпляра основного класса SWF-файла, переменная экземпляра root класса DisplayObject 4 _3# тождественна его переменной экземпляра stage.

В первом SWF-файле, открытом средой выполнения Flash, переменной root всех отображаемых объектов, которые не находятся в списке отображения, присвоено значение null.

В SWF-файлах, которые загружаются другими SWF-файлами, значение переменной root устанавливается следующим образом:

? если отображаемые объекты являются отображаемыми потомками экземпляра основного класса, то переменная root ссылается на этот экземпляр, даже если экземпляр основного класса не находится в списке отображения;

? для отображаемых объектов, которые не являются отображаемыми потомками экземпляра основного класса и не находятся в списке отображения, переменной root присваивается значение null.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Оставить комментарий

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

Полезные ссылки
Случайные записи
  • 27.02.2011">Руководство по actionscript. часть 6, стр. 040
  • 06.08.2011">Функция автосохранения в Photoshop
  • 14.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.78
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 035
  • 15.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.45
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.80
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.129
  • 01.03.2011">Руководство по actionscript. часть 5, стр. 114
  • 17.03.2011">Руководство по actionscript. часть 2, стр. 146
  • 05.03.2011">Руководство по actionscript. часть 5, стр. 014
  • 27.02.2011">Руководство по actionscript. часть 6, стр. 024
  • 18.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.76
  • 09.03.2011">Руководство по actionscript. часть 4, стр. 050
  • 19.03.2011">Руководство по actionscript. часть 2, стр. 088
  • 16.08.2010">Нужна ли публикация списка клиентов?
Опрос

Какие цвета вы предпочитаете?

View Results

Loading ... Loading ...