Пакет | mx.core |
Интерфейс | public interface IFlexDisplayObject extends IBitmapDrawable , IEventDispatcher |
Средство реализации | BitmapAsset, ButtonAsset, DefaultDragImage, MovieClipAsset, MovieClipLoaderAsset, ProgrammaticSkin, SpriteAsset, SystemManager, TextFieldAsset, UIComponent |
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Свойство | Определено | ||
---|---|---|---|
accessibilityProperties : AccessibilityProperties
Текущие параметры специальных возможностей для данного экранного объекта. | IFlexDisplayObject | ||
alpha : Number
Указывает значение альфа-прозрачности заданного объекта. | IFlexDisplayObject | ||
blendMode : String
Значение класса BlendMode, задающее режим наложения. | IFlexDisplayObject | ||
cacheAsBitmap : Boolean
При значении true среда выполнения Flash кэширует внутреннее растровое представление экранного объекта. | IFlexDisplayObject | ||
filters : Array
Индексированный массив, который содержит все объекты filter, связанные в настоящий момент с экранным объектом. | IFlexDisplayObject | ||
height : Number
Указывает высоту экранного объекта в пикселях. | IFlexDisplayObject | ||
loaderInfo : LoaderInfo [только для чтения]
Возвращает объект LoaderInfo, содержащий сведения о загрузке файла, к которому принадлежит этот экранный объект. | IFlexDisplayObject | ||
mask : DisplayObject
Вызывающий экранный объект маскируется заданным объектом mask. | IFlexDisplayObject | ||
measuredHeight : Number [только для чтения]
Рассчитанная высота этого объекта. | IFlexDisplayObject | ||
measuredWidth : Number [только для чтения]
Измеренная ширина этого объекта. | IFlexDisplayObject | ||
mouseX : Number [только для чтения]
Указывает координату x мыши или курсора пользовательского ввода (в пикселях). | IFlexDisplayObject | ||
mouseY : Number [только для чтения]
Указывает координату y мыши или курсора пользовательского ввода (в пикселях). | IFlexDisplayObject | ||
name : String
Указывает имя экземпляра DisplayObject. | IFlexDisplayObject | ||
opaqueBackground : Object
Определяет, является ли экранный объект непрозрачным с определенным цветом фона. | IFlexDisplayObject | ||
parent : DisplayObjectContainer [только для чтения]
Указывает объект DisplayObjectContainer, содержащий данный экранный объект. | IFlexDisplayObject | ||
root : DisplayObject [только для чтения]
В случае с экранным объектом в загруженном SWF-файле свойством root является самый верхний экранный объект в части структуры дерева списка отображения, представленной этим SWF-файлом. | IFlexDisplayObject | ||
rotation : Number
Указывает поворот экземпляра DisplayObject относительно его исходной ориентации (в градусах). | IFlexDisplayObject | ||
scale9Grid : Rectangle
Текущая активная сетка масштабирования. | IFlexDisplayObject | ||
scaleX : Number
Указывает горизонтальное масштабирование объекта от точки регистрации (в процентах). | IFlexDisplayObject | ||
scaleY : Number
Указывает вертикальное масштабирование объекта от точки регистрации (в процентах). | IFlexDisplayObject | ||
scrollRect : Rectangle
Прямоугольная область прокрутки экранного объекта. | IFlexDisplayObject | ||
stage : Stage [только для чтения]
Класс Stage экранного объекта. | IFlexDisplayObject | ||
transform : flash.geom:Transform
Объект со свойствами, относящимися к матрице, преобразованию цвета и пиксельным границам экранного объекта. | IFlexDisplayObject | ||
visible : Boolean
Определяет видимость экранного объекта. | IFlexDisplayObject | ||
width : Number
Указывает ширину экранного объекта в пикселях. | IFlexDisplayObject | ||
x : Number
Указывает координату x экземпляра DisplayObject, связанную с локальными координатами родительского DisplayObjectContainer. | IFlexDisplayObject | ||
y : Number
Указывает координату y экземпляра DisplayObject, связанную с локальными координатами родительского DisplayObjectContainer. | IFlexDisplayObject |
Метод | Определено | ||
---|---|---|---|
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии. | IEventDispatcher | ||
Посылает событие в поток событий. | IEventDispatcher | ||
Возвращает прямоугольник, определяющий область объекта отображения, которая относится к системе координат объекта targetCoordinateSpace. | IFlexDisplayObject | ||
Возвращает прямоугольник, определяющий границу объекта отображения по системе координат, определенной параметром targetCoordinateSpace за исключением линий фигур. | IFlexDisplayObject | ||
Преобразует объект Point из координат рабочей области (глобальных) в координаты отображаемого объекта (локальные). | IFlexDisplayObject | ||
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события. | IEventDispatcher | ||
Вычисляет ограничительную рамку экранного объекта, чтобы определить, не перекрывает и не пересекает ли она ограничительную рамку экранного объекта obj. | IFlexDisplayObject | ||
Вычисляет экранный объект, чтобы определить, перекрывает ли он точку, заданную координатами x и y, или пересекает ее. | IFlexDisplayObject | ||
Преобразует объект Point из координат экранного объекта (локальных) в координаты рабочей области (глобальные). | IFlexDisplayObject | ||
Перемещает этот объект по указанным координатам осей x и y. | IFlexDisplayObject | ||
Удаляет прослушиватель из объекта EventDispatcher. | IEventDispatcher | ||
Устанавливает фактический размер для этого объекта. | IFlexDisplayObject | ||
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником. | IEventDispatcher |
accessibilityProperties | свойство |
accessibilityProperties:AccessibilityProperties
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Текущие параметры специальных возможностей для данного экранного объекта. Если модифицируется свойство accessibilityProperties
или любые поля в accessibilityProperties
, необходимо вызвать метод Accessibility.updateProperties()
, чтобы изменения вступили в силу.
Примечание. Для объектов, созданных в среде разработки Flash, значение accessibilityProperties
предварительно заполняется информацией, введенной на панели «Специальные возможности» данного объекта.
Реализация
public function get accessibilityProperties():AccessibilityProperties
public function set accessibilityProperties(value:AccessibilityProperties):void
alpha | свойство |
alpha:Number
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает значение альфа-прозрачности заданного объекта. Допустимые значения находятся в диапазоне 0 (полностью прозрачный) — 1 (полностью непрозрачный). Значением по умолчанию является 1. Экранные объекты, для которых значение alpha
равно 0, являются активными, несмотря на невидимость.
Реализация
public function get alpha():Number
public function set alpha(value:Number):void
blendMode | свойство |
blendMode:String
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Значение класса BlendMode, задающее режим наложения. Растровое изображение может прорисовываться внутренними средствами двумя способами. Если включен режим наложения или внешняя маска обрезки, растровое изображение рисуется путем добавления квадрата, заполненного растровым изображением, к векторной визуализации. При попытке задать свойству недопустимое значение среда выполнения Flash использует значение BlendMode.NORMAL
.
Свойство blendMode
влияет на каждый пиксель экранного объекта. Каждый пиксель состоит из трех основных цветов (красного, зеленого и синего) со значениями в пределах 0x00 — 0xFF. Проигрыватель Flash Player или Adobe AIR сравнивает каждый цвет, составляющий один пиксель, во фрагменте ролика с соответствующим цветом пикселя фона. Например, если blendMode
имеет значение BlendMode.LIGHTEN
, Flash Player или Adobe AIR сравнивает значение красного для экранного объекта со значением красного для фона и использует более светлый из них в качестве красного компонента отображаемого цвета.
В следующей таблице описываются параметры blendMode
. Класс BlendMode определяет строковые значения для использования. На иллюстрациях в таблице показаны значения blendMode
, примененные к круглому экранному объекту (2) с наложением на другой экранный объект (1).
Константа BlendMode | Рисунок | Описание |
---|---|---|
BlendMode.NORMAL | Экранный объект отображается перед фоном. Значения пикселей экранного объекта переопределяют значения пикселей фона. В прозрачных областях экранного объекта виден фон. | |
BlendMode.LAYER | Инициирует создание группы прозрачности для экранного объекта. Это означает, что перед дальнейшей обработкой экранный объект сначала составляется во временном буфере. Это выполняется автоматически, если экранный объект заранее сохраняется в кэше посредством кэширования растрового изображения или если экранный объект является контейнером экранных объектов, содержащим хотя бы один дочерний объект с параметром blendMode не в значении BlendMode.NORMAL . Не поддерживается при визуализации с использованием графического процессора.
| |
BlendMode.MULTIPLY | Умножает значения составляющих цветов экранного объекта на значения цветов фона и затем нормализует их путем деления на 0xFF, в результате чего получаются более темные цвета. Этот параметр часто используется для затенения и создания эффекта глубины.
Например, если составляющий цвет (например, красный) одного пикселя в экранном объекте и соответствующий цвет пикселя в фоне имеют значение 0х88, то в результате умножения получается 0х4840. Деление на 0хFF дает значение 0х48 для данного составляющего цвета, принимающего более темный оттенок, чем в экранном объекте и фоне. | |
BlendMode.SCREEN | Умножает обратный код цвета экранного объекта на обратный код цвета фона, в результате чего получается эффект осветления. Этот параметр часто используется для высветления или удаления черных областей экранного объекта. | |
BlendMode.LIGHTEN | Выбирает более светлые из составляющих цветов экранного объекта и цвета фона (цвета с большими значениями). Этот параметр часто используется как тип наложения.
Например, если в экранном объекте есть пиксель со значением RGB, равным 0xFFCC33, а RGB пикселя фона имеет значение 0xDDF800, то значением RGB отображаемого пикселя является 0xFFF833 (так как 0xFF > 0xDD, 0xCC < 0xF8 и 0x33 > 0x00 = 33). Не поддерживается при визуализации с использованием графического процессора. | |
BlendMode.DARKEN | Выбирает более темные из составляющих цветов экранного объекта и цветов фона (цвета с меньшими значениями). Этот параметр часто используется как тип наложения.
Например, если в экранном объекте есть пиксель со значением RGB, равным 0xFFCC33, а RGB пикселя фона имеет значение 0xDDF800, то значением RGB отображаемого пикселя является 0xDDCC00 (так как 0xFF > 0xDD, 0xCC < 0xF8 и 0x33 > 0x00 = 33). Не поддерживается при визуализации с использованием графического процессора. | |
BlendMode.DIFFERENCE | Сравнивает составляющие цвета экранного объекта с цветами его фона и вычитает более темное значение (из двух составляющих цветов) из более светлого значения. Этот параметр часто используется для получения более живых цветов.
Например, если в экранном объекте есть пиксель со значением RGB, равным 0xFFCC33, а RGB пикселя фона имеет значение 0xDDF800, то значением RGB отображаемого пикселя является 0x222C33 (так как 0xFF - 0xDD = 0x22, 0xF8 - 0xCC = 0x2C и 0x33 - 0x00 = 0x33). | |
BlendMode.ADD | Прибавляет значения составляющих цветов экранного объекта к значениям цветов его фона (с максимальным значением 0xFF). Этот параметр часто используется для анимации растворения света между двумя объектами.
Например, если в экранном объекте есть пиксель со значением RGB, равным 0xAAA633, а RGB пикселя фона имеет значение 0xDD2200, то значением RGB отображаемого пикселя является 0xFFC833 (так как 0xAA + 0xDD > 0xFF, 0xA6 + 0x22 = 0xC8 и 0x33 + 0x00 = 0x33). | |
BlendMode.SUBTRACT | Вычитает значения составляющих цветов экранного объекта из значений цвета фона (с минимальным значением 0). Этот параметр часто используется для анимации растворения затемнения между двумя объектами.
Например, если в экранном объекте есть пиксель со значением RGB, равным 0xAA2233, а RGB пикселя фона имеет значение 0xDDA600, то значением RGB отображаемого пикселя является 0x338400 (так как 0xDD - 0xAA = 0x33, 0xA6 - 0x22 = 0x84 и 0x00 - 0x33 < 0x00). | |
BlendMode.INVERT | Инвертирует фон. | |
BlendMode.ALPHA | Применяет альфа-значение каждого пикселя экранного объекта к фону. Для этого требуется, чтобы параметру blendMode родительского экранного объекта было задано значение BlendMode.LAYER . Например, на иллюстрации для родительского экранного объекта с белым фоном используется настройка blendMode = BlendMode.LAYER . Не поддерживается при визуализации с использованием графического процессора. | |
BlendMode.ERASE | Стирает фон на основе альфа-значения экранного объекта. Для этого требуется, чтобы настройке blendMode родительского экранного объекта было задано значение BlendMode.LAYER . Например, на иллюстрации для родительского экранного объекта с белым фоном используется настройка blendMode = BlendMode.LAYER . Не поддерживается при визуализации с использованием графического процессора. | |
BlendMode.OVERLAY | Изменяет цвет каждого пикселя в зависимости от того, насколько темный цвет используется для фона. Если фон светлее 50-процентного серого, цвета экранного объекта и фона отфильтровываются, в результате чего получается более светлый цвет. Если фон темнее 50-процентного серого, цвета умножаются, что дает более темный цвет. Этот параметр часто используется для эффектов затенения. Не поддерживается при визуализации с использованием графического процессора. | |
BlendMode.HARDLIGHT | Изменяет цвет каждого пикселя в зависимости от того, насколько темный цвет используется для экранного объекта. Если экранный объект светлее 50-процентного серого, цвета экранного объекта и фона отфильтровываются, в результате чего получается более светлый цвет. Если экранный объект темнее 50-процентного серого, цвета умножаются, что дает более темный цвет. Этот параметр часто используется для эффектов затенения. Не поддерживается при визуализации с использованием графического процессора. | |
BlendMode.SHADER | нет | Изменяет цвета с использованием пользовательской подпрограммы затенения. Используемое затенение задано в качестве экземпляра Shader, присвоенного свойству blendShader . Применение свойства blendShader к экземпляру Shader автоматически приведет к смене значения свойства blendMode на BlendMode.SHADER . Если для свойства blendMode задано BlendMode.SHADER без предварительного задания свойства blendShader , то свойство blendMode примет значение BlendMode.NORMAL . Не поддерживается при визуализации с использованием графического процессора. |
Реализация
public function get blendMode():String
public function set blendMode(value:String):void
cacheAsBitmap | свойство |
cacheAsBitmap:Boolean
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
При значении true
среда выполнения Flash кэширует внутреннее растровое представление экранного объекта. Такое кэширование может повысить производительность для экранных объектов со сложным векторным содержимым.
Все векторные данные для экранного объекта, имеющего кэшированный растр, вырисовываются в растровом изображении, а не в основной области отображения. Если cacheAsBitmapMatrix
имеет значение null или не поддерживается, растровое изображение копируется на основной экран в виде нерастянутых и неповернутых пикселей, привязанных к границам ближайших пикселей. Пиксели отображаются в точном соответствии с родительским объектом. При изменении границ растрового изображения оно не растягивается, а создается повторно.
Если свойство cacheAsBitmapMatrix
поддерживается и имеет ненулевое значение, объект отрисовывается на растровом изображении вне экрана с использованием этой матрицы, и результат его визуализации с растяжением и/или поворотом используется для отрисовки объекта на главном экране.
Внутреннее растровое представление создается, только если свойство cacheAsBitmap
имеет значение true
.
После задания свойству cacheAsBitmap
значения true
визуализация остается без изменений, однако экранный объект автоматически выполняет привязку к пикселям. Скорость анимации может значительно увеличиться в зависимости от сложности векторного содержимого.
Свойство cacheAsBitmap
автоматически получает значение true
каждый раз, когда к экранному объекту применяется фильтр (при непустом массиве filter
). Если к экранному объекту применяется фильтр, его свойство cacheAsBitmap
отражается в значении true
, даже если ему было задано значение false
. Если удалить все фильтры экранного объекта, параметр cacheAsBitmap
вернется к последнему заданному значению.
В следующих случаях экранный объект не использует растровое изображение, даже если свойство cacheAsBitmap
имеет значение true
, а вместо этого визуализирует векторные данные:
- Растровое изображение слишком большое. В AIR 1.5 и Flash Player 10 максимальный размер растрового изображения составляет 8,191 пикселей в ширину или высоту, а общее количество пикселей не может превышать 16,777,215. (Т.е. если ширина растрового изображения составляет 8,191 пикселя, его высота не может быть больше 2 048 пикселей.) В проигрывателе Flash Player 9 и более ранних версий это ограничение составляет 2 880 пикселей в высоту и 2 880 пикселей в ширину.
- Не удается выделить память для растрового изображения (с выдачей ошибки нехватки памяти).
Свойство cacheAsBitmap
лучше всего использовать для фрагментов роликов, в которых преобладает статичное содержимое и редко используется масштабирование и поворот. Использование в таких фрагментах роликов свойства cacheAsBitmap
может повысить производительность при преобразовании фрагмента ролика (при изменении координат x и y).
Реализация
public function get cacheAsBitmap():Boolean
public function set cacheAsBitmap(value:Boolean):void
filters | свойство |
filters:Array
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Индексированный массив, который содержит все объекты filter, связанные в настоящий момент с экранным объектом. Пакет flash.filters содержит несколько классов, определяющих конкретные фильтры, доступные для использования.
Фильтры можно применять в ходе работы в инструменте разработки Flash Professional или во время выполнения с использованием кода ActionScript. Чтобы применить фильтр с помощью ActionScript, необходимо создать временную копию всего массива filters
, внести в нее необходимые изменения, а затем присвоить полученное значение исходному массиву filters
. Нельзя добавлять новый объект filter напрямую в массив filters
.
Чтобы добавить фильтр с помощью ActionScript, выполните следующие действия (предположим, что целевой экранный объект называется myDisplayObject
).
- Создайте новый объект filter с помощью метода конструктора выбранного класса фильтра.
- Присвойте значение массива
myDisplayObject.filters
временному массиву, например, массиву с именемmyFilters
. - Добавьте новый объект filter во временный массив
myFilters
. - Присвойте значение временного массива массиву
myDisplayObject.filters
.
Если массив filters
не определен, то временный массив использовать не требуется. Вместо этого можно напрямую присвоить литерал массива, содержащий один или несколько созданных вами объектов filter. В первом примере раздела «Примеры» добавляется фильтр «Тень» с помощью кода, обрабатывающего определенный и неопределенный массивы filters
.
Чтобы изменить существующий объект filter, необходимо использовать прием изменения копии массива filters
.
- Присвойте значение массива
filters
временному массиву, например, массиву с именемmyFilters
. - Модифицируйте свойство с помощью временного массива с именем
myFilters
. Например, чтобы настроить свойство quality первого фильтра массива, можно использовать следующий код:myFilters[0].quality = 1;
- Присвойте значение временного массива массиву
filters
.
Если экранный объект имеет соответствующий фильтр, то во время загрузки он помечается для кэширования в виде прозрачного растрового изображения. С этого момента проигрыватель кэширует экранный объект в виде растрового изображения, если этот объект имеет действительный список фильтров. Исходное растровое изображение используется в качестве источника для эффектов фильтра. Каждый экранный объект, как правило, имеет два растровых изображения: одно с исходным нефильтрованным экранным объектом, а другой для конечного изображения, полученного после фильтрации. Конечное изображение используется при визуализации. Если экранный объект не изменяется, конечное изображение не обновляется.
Пакет flash.filters включает классы фильтров. Например, чтобы создать фильтр DropShadow, необходимо использовать код:
import flash.filters.DropShadowFilter var myFilter:DropShadowFilter = new DropShadowFilter (distance, angle, color, alpha, blurX, blurY, quality, inner, knockout)
Можно использовать оператор is
, чтобы определить тип фильтра, присвоенного для каждой позиции индекса в массиве filter
. На примере следующего кода показывается, как определить положение первого фильтра в массиве filters
— DropShadowFilter.
import flash.text.TextField; import flash.filters.*; var tf:TextField = new TextField(); var filter1:DropShadowFilter = new DropShadowFilter(); var filter2:GradientGlowFilter = new GradientGlowFilter(); tf.filters = [filter1, filter2]; tf.text = "DropShadow index: " + filterPosition(tf, DropShadowFilter).toString(); // 0 addChild(tf) function filterPosition(displayObject:DisplayObject, filterClass:Class):int { for (var i:uint = 0; i < displayObject.filters.length; i++) { if (displayObject.filters[i] is filterClass) { return i; } } return -1; }
Примечание. Так как нельзя добавить новый объект filter напрямую в массив DisplayObject.filters
, следующий код не окажет действия на целевой экранный объект с именемmyDisplayObject
.
myDisplayObject.filters.push(myDropShadow);
Реализация
public function get filters():Array
public function set filters(value:Array):void
height | свойство |
height:Number
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает высоту экранного объекта в пикселях. Высота вычисляется на основе границ содержимого экранного объекта. Когда задается свойство height
, соответствующим образом изменяется и свойство scaleY
, как показано в следующем коде.
var rect:Shape = new Shape(); rect.graphics.beginFill(0xFF0000); rect.graphics.drawRect(0, 0, 100, 100); trace(rect.scaleY) // 1; rect.height = 200; trace(rect.scaleY) // 2;
За исключением объектов TextField и Video, экранные объекты без содержимого (например, пустой спрайт), имеют высоту 0, даже если задать свойству height
другое значение.
Реализация
public function get height():Number
public function set height(value:Number):void
loaderInfo | свойство |
loaderInfo:LoaderInfo
[только для чтения] Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Возвращает объект LoaderInfo, содержащий сведения о загрузке файла, к которому принадлежит этот экранный объект. Свойство loaderInfo
определяется только для корневого экранного объекта SWF-файла или для загруженного объекта Bitmap (а не нарисованного с помощью ActionScript). Чтобы найти объект loaderInfo
, связанный с SWF-файлом, содержащим экранный объект с именем myDisplayObject
, используйте myDisplayObject.root.loaderInfo
.
Загрузку большого SWF-файла можно отслеживать с помощью метода this.root.loaderInfo.addEventListener(Event.COMPLETE, func)
.
Реализация
public function get loaderInfo():LoaderInfo
mask | свойство |
mask:DisplayObject
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Вызывающий экранный объект маскируется заданным объектом mask
. Чтобы обеспечить маскирование при масштабировании рабочей области, экранный объект mask
должен быть активным элементом списка отображения. Сам объект mask
не отображается. Чтобы удалить маску, нужно задать для mask
значение null
.
Чтобы обеспечить масштабирование объекта mask, его необходимо добавить в список отображения. Чтобы обеспечить возможность перетаскивания маскирующего объекта Sprite (вызовом методаstartDrag()
), его необходимо добавить в список отображения. Чтобы вызвать метод startDrag()
для маскирующего спрайта при отправке им события mouseDown
, задайте свойству спрайта buttonMode
свойство true
.
Когда экранные объекты кэшируются путем установки для свойства cacheAsBitmap
значения true
, а для свойства cacheAsBitmapMatrix
— объекта «Matrix», и маска и отображаемый объект, на который накладывается маска, должны быть частью одного помещенного в кэш растрового изображения. Таким образом, если в кэш помещается отображаемый объект, маска должна быть дочерним элементом этого объекта. Если в кэш помещается предок объекта из списка отображения, маска должна быть дочерним элементом этого предка или одного из его потомков. Если в кэш помещается несколько предков объекта с наложенной маской, эта маска должна быть потомком кэшированного контейнера, самого близкого к объекту в списке отображения.
Примечание. Один объект mask
не может использоваться для маскирования нескольких вызывающих экранных объектов. Когда mask
назначается второму экранному объекту, он перестает быть маской первого, для которого свойство mask
получает значение null
.
Реализация
public function get mask():DisplayObject
public function set mask(value:DisplayObject):void
measuredHeight | свойство |
measuredHeight:Number
[только для чтения] Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Рассчитанная высота этого объекта.
Как правило, для графических тем оформления выполняется жесткая кодировка, так как это число представляет собой всего лишь число пикселей в графике. Для тем оформления кода также может использоваться жесткая кодировка для выполнения рисунка определенного размера. При изменении размера в зависимости от свойств, возможно, потребуется использование ILayoutManagerClient, что приведет к вызову метода measure()
в нужное время и позволит вычислить measuredHeight
.
Реализация
public function get measuredHeight():Number
measuredWidth | свойство |
measuredWidth:Number
[только для чтения] Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Измеренная ширина этого объекта.
Как правило, для графических тем оформления выполняется жесткая кодировка, так как это число представляет собой всего лишь число пикселей в графике. Для тем оформления кода также может использоваться жесткая кодировка для выполнения рисунка определенного размера. При изменении размера в зависимости от свойств, возможно, потребуется использование ILayoutManagerClient, что приведет к вызову метода measure()
в нужное время и позволит вычислить measuredHeight
.
Реализация
public function get measuredWidth():Number
mouseX | свойство |
mouseX:Number
[только для чтения] Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает координату x мыши или курсора пользовательского ввода (в пикселях).
Примечание. Для повернутого объекта DisplayObject возвращенная координата x будет характеризовать объект, поворот которого не выполнен.
Реализация
public function get mouseX():Number
mouseY | свойство |
mouseY:Number
[только для чтения] Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает координату y мыши или курсора пользовательского ввода (в пикселях).
Примечание. Для повернутого объекта DisplayObject возвращенная координата y будет характеризовать объект, поворот которого не выполнен.
Реализация
public function get mouseY():Number
name | свойство |
name:String
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает имя экземпляра DisplayObject. Объект можно найти в списке дочерних объектов родительского контейнера экранных объектов путем вызова метода getChildByName()
контейнера.
Реализация
public function get name():String
public function set name(value:String):void
opaqueBackground | свойство |
opaqueBackground:Object
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Определяет, является ли экранный объект непрозрачным с определенным цветом фона. Прозрачное растровое изображение содержит данные альфа-канала и рисуется прозрачным. Непрозрачное растровое изображение не имеет альфа-канала (и визуализируется быстрее, чем прозрачное изображение). Если растровое изображение непрозрачное, требуется задать для него собственный цвет фона.
Если задать численное значение, поверхность будет непрозрачной, а RGB-цвет фона будет соответствовать заданному числу. Если оставить значение по умолчанию null
, у экранного объекта будет прозрачный фон.
Свойство opaqueBackground
предназначено, главным образом, для использования вместе со свойством cacheAsBitmap
с целью оптимизации визуализации. Для экранных объектов со свойством cacheAsBitmap
в значении true настройка свойства opaqueBackground
может повысить производительность.
Непрозрачная область фона не сопоставляется при вызове метода hitTestPoint()
с параметром shapeFlag
в значении true
.
Непрозрачная область фона не реагирует на события мыши.
Реализация
public function get opaqueBackground():Object
public function set opaqueBackground(value:Object):void
parent | свойство |
parent:DisplayObjectContainer
[только для чтения] Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает объект DisplayObjectContainer, содержащий данный экранный объект. Используйте свойство parent
, чтобы задать относительный путь к экранным объектам, находящимся на более высоких уровнях иерархии списка отображения, чем текущий объект.
Свойство parent
можно использовать для перемещения объекта вверх на несколько уровней в списке отображения, как показано ниже.
this.parent.parent.alpha = 20;
Реализация
public function get parent():DisplayObjectContainer
root | свойство |
root:DisplayObject
[только для чтения] Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
В случае с экранным объектом в загруженном SWF-файле свойством root
является самый верхний экранный объект в части структуры дерева списка отображения, представленной этим SWF-файлом. Для объекта Bitmap, представляющего файл загруженного изображения, свойством root
является сам объект Bitmap. Для экземпляра основного класса первого загруженного SWF-файла свойством root
является сам экранный объект. Свойством root
объекта Stage является сам объект Stage. Свойство root
имеет значение null
для экранных объектов, не добавленных в список отображения, если они не добавлены в контейнер экранных объектов, не включенный в список отображения, но являющийся дочерним элементом экранного объекта верхнего уровня в загруженном SWF-файле.
Например, если создается новый объект Sprite путем вызова метода конструктора Sprite()
, его свойство root
имеет значение null
до тех пор, пока он не будет добавлен в список отображения (или в контейнер экранных объектов, не включенный в список отображения, но являющийся дочерним объектом экранного объекта верхнего уровня в SWF-файле).
Для загруженного SWF-файла, несмотря на то, что объект Loader, использованный для загрузки, может не входить в список отображения, свойством root
экранного объекта верхнего уровня этого файла является сам объект. Свойство root
объекта Loader не задается, пока он не будет добавлен в качестве дочернего объекта экранного объекта, для которого уже задано свойство root
.
Реализация
public function get root():DisplayObject
rotation | свойство |
rotation:Number
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает поворот экземпляра DisplayObject относительно его исходной ориентации (в градусах). Значения от 0 до 180 задают поворот по часовой стрелке. Значения от 0 до -180 задают поворот против часовой стрелки. Значения за пределами этого диапазона добавляются или вычитаются из 360 для получения допустимого значения. Например, инструкция my_video.rotation = 450
равносильна my_video.rotation = 90
.
Реализация
public function get rotation():Number
public function set rotation(value:Number):void
scale9Grid | свойство |
scale9Grid:Rectangle
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Текущая активная сетка масштабирования. Если установлено значение null
, весь объект отображения масштабируется в обычном порядке при применении любых преобразований масштаба.
При определении свойства scale9Grid
экранный объект разбивается на сетку с девятью областями на основе прямоугольника scale9Grid
, определяющего центральную область сетки. Восемь остальных областей сетки:
- Верхний левый угол за пределами прямоугольника
- Область над прямоугольником
- Верхний правый угол за пределами прямоугольника
- Область слева от прямоугольника
- Область справа от прямоугольника
- Нижний левый угол за пределами прямоугольника
- Область под прямоугольником
- Нижний правый угол за пределами прямоугольника
Восемь областей за пределами центра (ограниченного прямоугольником) можно рассматривать как рамку изображения, к которому при масштабировании применяются особые правила.
При масштабировании объекта отображения с определенным свойством scale9Grid
текст и градиенты масштабируются в обычном порядке, однако к остальным типам объектов применяются следующие правила.
- Содержимое центральной области масштабируется как обычно.
- Содержимое в углах не масштабируется.
- Содержимое в верхней и нижней областях масштабируется только по горизонтали. Содержимое в правой и левой областях масштабируется только по вертикали.
- Все заливки (включая растровые изображения, видео и градиенты) растягиваются в соответствии с новыми размерами.
При повороте экранного объекта последующее масштабирование выполняется в обычном режиме (и свойство scale9Grid
игнорируется).
В качестве примера рассмотрим следующий экранный объект и прямоугольник, применяемый в качестве его свойства scale9Grid
Экранный объект. |
Красный прямоугольник показывает |
При масштабировании или растягивании экранного объекта объекты в пределах прямоугольника масштабируются в обычном порядке, а объекты за его пределами масштабируются согласно правилам scale9Grid
.
Масштабируется до 75% | |
Масштабируется до 50% | |
Масштабируется до 25% | |
Вытягивается по горизонтали до 150% |
Как правило, параметрscale9Grid
используется для установки экранного объекта в качестве компонента, области краев которого сохраняют ширину при масштабировании компонента.
Реализация
public function get scale9Grid():Rectangle
public function set scale9Grid(value:Rectangle):void
scaleX | свойство |
scaleX:Number
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает горизонтальное масштабирование объекта от точки регистрации (в процентах). Точка регистрации по умолчанию — (0,0). 1,0 соответствует масштабу 100%.
Масштабирование локальной системы координат изменяет значения свойств x
и y
, определяемые в целых пикселях.
Реализация
public function get scaleX():Number
public function set scaleX(value:Number):void
scaleY | свойство |
scaleY:Number
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает вертикальное масштабирование объекта от точки регистрации (в процентах). Точка регистрации по умолчанию — (0,0). 1,0 соответствует масштабу 100%.
Масштабирование локальной системы координат изменяет значения свойств x
и y
, определяемые в целых пикселях.
Реализация
public function get scaleY():Number
public function set scaleY(value:Number):void
scrollRect | свойство |
scrollRect:Rectangle
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Прямоугольная область прокрутки экранного объекта. Экранный объект обрезается до размера, определенного прямоугольником, и прокручивается в его границах при изменении свойств x
и y
объекта scrollRect
.
Свойства объекта scrollRect
объекта Rectangle используют координатную плоскость экранного объекта и масштабируются просто как общий экранный объект. Углы обрезанного окна на экранном объекте прокрутки являются исходной точкой экранного объекта (0,0) и точкой, определенной шириной и высотой прямоугольника. Они не центрируются по исходной точке, а используют ее для определения верхнего левого угла области. Прокручиваемый экранный объект всегда прокручивается прибавлениями по целым пикселям.
Можно прокручивать объект влево и вправо, настроив свойство x
для scrollRect
объекта Rectangle. Чтобы прокручивать объект вверх и вниз, нужно настроить свойство y
для scrollRect
объекта Rectangle. Если экранный объект, повернутый на 90°, прокручивается влево и вправо, на самом деле экранный объект прокручивается вверх и вниз.
Обратите внимание, что изменения свойства scrollRect
обрабатываются, только когда объект визуализован. Такие методы, как localToGlobal
, могут не давать ожидаемого результата, если они вызываются сразу после изменения scrollRect
.
Примечание. Начиная с версии Flash Player 11.4/AIR 3.4 отрицательные значения для ширины или высоты прямоугольника изменены на 0.
Реализация
public function get scrollRect():Rectangle
public function set scrollRect(value:Rectangle):void
stage | свойство |
stage:Stage
[только для чтения] Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Класс Stage экранного объекта. Программа среды выполнения Flash имеет только один объект Stage. Например, можно создать и загрузить в список отображения несколько экранных объектов, и для каждого из них свойство stage
будет ссылаться на один и тот же объект Stage (даже если экранный объект принадлежит загруженному SWF-файлу).
Если экранный объект не добавлен в список отображения, его свойство stage
имеет значение null
.
Реализация
public function get stage():Stage
transform | свойство |
transform:flash.geom:Transform
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Объект со свойствами, относящимися к матрице, преобразованию цвета и пиксельным границам экранного объекта. Конкретные свойства (matrix, colorTransform и три свойства только для чтения (concatenatedMatrix
, concatenatedColorTransform
и pixelBounds
)) описываются в разделе, посвященном классу Transform.
Каждое из свойств объекта transform представляет собой объект. Это очень важно, так как единственным способом задать новые значения для объектов matrix или colorTransform является создание нового объекта и его копирование в свойство transform.matrix или transform.colorTransform.
Например, чтобы увеличить значение tx
матрицы экранного объекта, необходимо скопировать весь объект matrix, а затем копировать новый объект в свойство matrix объекта transform.
var myMatrix:Matrix = myDisplayObject.transform.matrix;
myMatrix.tx += 10;
myDisplayObject.transform.matrix = myMatrix;
Свойство tx
нельзя задавать напрямую. Следующий код не действует на myDisplayObject
.
myDisplayObject.transform.matrix.tx += 10;
Также можно копировать весь объект transform и назначить его свойству transform другого экранного объекта. Например, следующий код копирует весь объект transform из myOldDisplayObj
в myNewDisplayObj
.
myNewDisplayObj.transform = myOldDisplayObj.transform;
Полученный экранный объект, myNewDisplayObj
, теперь имеет те же значения для матрицы, преобразования цвета и пиксельных границ, что и старый экранный объект, myOldDisplayObj
.
Обратите внимание, что на устройствах AIR for TV используется аппаратное ускорение, если оно доступно, для преобразований цветов.
Реализация
public function get transform():flash.geom:Transform
public function set transform(value:flash.geom:Transform):void
visible | свойство |
visible:Boolean
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Определяет видимость экранного объекта. Невидимые экранные объекты отключаются. Например, если visible=false
для экземпляра InteractiveObject, то он не реагирует на щелчки мыши.
Реализация
public function get visible():Boolean
public function set visible(value:Boolean):void
width | свойство |
width:Number
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает ширину экранного объекта в пикселях. Ширина вычисляется на основе границ содержимого экранного объекта. Когда задается свойство width
, соответствующим образом изменяется и свойство scaleX
, как показано в следующем коде.
var rect:Shape = new Shape(); rect.graphics.beginFill(0xFF0000); rect.graphics.drawRect(0, 0, 100, 100); trace(rect.scaleX) // 1; rect.width = 200; trace(rect.scaleX) // 2;
За исключением объектов TextField и Video, экранные объекты без содержимого (например, пустой спрайт), имеют ширину 0, даже если задать свойству width
другое значение.
Реализация
public function get width():Number
public function set width(value:Number):void
x | свойство |
x:Number
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает координату x экземпляра DisplayObject, связанную с локальными координатами родительского DisplayObjectContainer. Если объект включен в DisplayObjectContainer с преобразованиями, то он находится в локальной системе координат содержащего его DisplayObjectContainer. Таким образом, если объект DisplayObjectContainer повернут на 90° против часовой стрелки, дочерние элементы наследуют систему координат с поворотом на 90° против часовой стрелки. Координаты объекта определяются относительно положения точки регистрации.
Реализация
public function get x():Number
public function set x(value:Number):void
y | свойство |
y:Number
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает координату y экземпляра DisplayObject, связанную с локальными координатами родительского DisplayObjectContainer. Если объект включен в DisplayObjectContainer с преобразованиями, то он находится в локальной системе координат содержащего его DisplayObjectContainer. Таким образом, если объект DisplayObjectContainer повернут на 90° против часовой стрелки, дочерние элементы наследуют систему координат с поворотом на 90° против часовой стрелки. Координаты объекта определяются относительно положения точки регистрации.
Реализация
public function get y():Number
public function set y(value:Number):void
getBounds | () | метод |
public function getBounds(targetCoordinateSpace:DisplayObject):Rectangle
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Возвращает прямоугольник, определяющий область экранного объекта, которая относится к системе координат объекта targetCoordinateSpace
. На примере следующего кода рассмотрим, как возвращаемый прямоугольник может изменяться в зависимости от передаваемого методу параметра targetCoordinateSpace
.
var container:Sprite = new Sprite(); container.x = 100; container.y = 100; this.addChild(container); var contents:Shape = new Shape(); contents.graphics.drawCircle(0,0,100); container.addChild(contents); trace(contents.getBounds(container)); // (x=-100, y=-100, w=200, h=200) trace(contents.getBounds(this)); // (x=0, y=0, w=200, h=200)
Примечание. Используйте методы localToGlobal()
и globalToLocal()
для преобразования локальных координат экранного объекта в координаты экрана и наоборот.
Метод getBounds()
похож на методgetRect()
, однако прямоугольник, возвращаемый методом getBounds()
, включает все штрихи на фигурах, а возвращаемый методом getRect()
— нет. Пример см. в описании метода getRect()
.
Параметры
targetCoordinateSpace:DisplayObject — Экранный объект, определяющий используемую систему координат
|
Rectangle — Прямоугольник, определяющий область экранного объекта относительно системы координат объекта targetCoordinateSpace .
|
getRect | () | метод |
public function getRect(targetCoordinateSpace:DisplayObject):Rectangle
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Возвращает прямоугольник, определяющий границу объекта отображения по системе координат, определенной параметром targetCoordinateSpace
за исключением линий фигур. Значения, возвращаемые методом getRect()
, равны или меньше возвращаемых методом getBounds()
.
Примечание. Используйте методы localToGlobal()
и globalToLocal()
для преобразования локальных координат отображаемого объекта в координаты рабочей области и наоборот.
Параметры
targetCoordinateSpace:DisplayObject — Экранный объект, определяющий используемую систему координат
|
Rectangle — Прямоугольник, определяющий область экранного объекта относительно системы координат объекта targetCoordinateSpace .
|
globalToLocal | () | метод |
public function globalToLocal(point:Point):Point
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Преобразует объект Point
из координат рабочей области (глобальных) в координаты экранного объекта (локальные).
Чтобы воспользоваться этим методом, сначала нужно создать экземпляр класса Point. Присвоенные вами значения x и y представляют глобальные координаты, так как они указаны относительно исходной точки (0,0) основной области отображения. Затем экземпляр Point следует передать в качестве параметра методу globalToLocal()
. Этот метод возвращает новый объект Point со значениями x и y, указанными относительно исходной точки отображаемого объекта, а не рабочей области.
Параметры
point:Point — Объект, созданный с использованием класса Point. Объект Point задает координаты x и y в качестве свойств.
|
Point — Объект Point с координатами относительно отображаемого объекта.
|
hitTestObject | () | метод |
public function hitTestObject(obj:DisplayObject):Boolean
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Вычисляет ограничительную рамку экранного объекта, чтобы определить, не перекрывает и не пересекает ли она ограничительную рамку экранного объекта obj
.
Параметры
obj:DisplayObject — Экранный объект для сравнения.
|
Boolean — true , если ограничительные рамки экранных объектов пересекаются; false , если нет.
|
hitTestPoint | () | метод |
public function hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Вычисляет экранный объект, чтобы определить, перекрывает ли он точку, заданную координатами x
и y
, или пересекает ее. Параметры x
и y
задают точку в координатной плоскости рабочей области, а не контейнера экранных объектов, содержащего объект (если контейнером не является сама рабочая область).
Параметры
x:Number — Координата x, сравниваемая с данным объектом.
| |
y:Number — Координата у, сравниваемая с данным объектом.
| |
shapeFlag:Boolean (default = false ) — Указывает, следует ли выполнять тестирование по фактическим пикселям объекта (true ) или по рамке (false ).
|
Boolean — Значение — true , если экранный объект перекрывает заданный объект или пересекается с ним; в противном случае — false .
|
localToGlobal | () | метод |
public function localToGlobal(point:Point):Point
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Преобразует объект point
из координат экранного объекта (локальных) в координаты рабочей области (глобальные).
Этот метод позволяет преобразовать заданные координаты x и y из значений относительно исходной точки (0, 0) конкретного объекта (локальных координат) в значения относительно исходной точки рабочей области (глобальные координаты).
Чтобы воспользоваться этим методом, сначала нужно создать экземпляр класса Point. Присвоенные вами значения x и y представляют локальные координаты, так как они указаны относительно исходной точки экранного объекта.
Затем созданный экземпляр Point передается в качестве параметра методу localToGlobal()
. Этот метод возвращает новый объект Point со значениями x и y, указанными относительно исходной точки рабочей области, а не объекта отображения.
Параметры
point:Point — Имя или идентификатор точки, созданной с использованием класса Point, в качестве свойств которой заданы координаты x и y.
|
Point — Объект Point с координатами относительно рабочей области.
|
move | () | метод |
public function move(x:Number, y:Number):void
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Перемещает этот объект по указанным координатам осей x и y.
Параметры
x:Number — Новая позиция по оси x для этого объекта.
| |
y:Number — Новая позиция по оси y для этого объекта.
|
setActualSize | () | метод |
public function setActualSize(newWidth:Number, newHeight:Number):void
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Устанавливает фактический размер для этого объекта.
Этот метод главным образом используется в реализации метода updateDisplayList()
, в котором вы вычисляете фактический размер этого объекта, основанный на его явном размере, размере по отношению к вышестоящему элементу (процент от его размера), а также измеренный размер. Далее путем вызова метода setActualSize()
вы применяете этот фактический размер к объекту.
В других ситуациях вместо вызова этого метода требуется установка свойств, например width
, height
, percentWidth
или percentHeight
.
Параметры
newWidth:Number — Новая ширина для этого объекта.
| |
newHeight:Number — Новая высота для этого объекта.
|
Tue Jun 12 2018, 11:34 AM Z