data:Object
[чтение и запись]
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9.0.28.0 |
Определяет или задает объект, представляющий данные, связанные с компонентом. Когда это значение установлено, данные компонента сохраняются, а компонент, в котором они содержатся, аннулируется. Аннулированный компонент автоматически перерисовывается.
Это свойство данных представляет объект, содержащий элемент в DataProvider, который представляет ячейка. Как правило, это свойство данных содержит стандартные свойства в зависимости от типа компонента. Данные в разделе CellRenderer компонента List или ComboBox содержат метку, значок и свойства данных; в TileList указаны метка и свойство source; в ячейке DataGrid содержатся значения для каждого столбца. Свойство данных может также содержать данные, указанные пользователем в отношении определенной ячейки. Пользователи могут расширить CellRenderer, чтобы компонент получил возможность обратиться к различным свойствам данных при визуализации ячейки.
Кроме того, чтобы указать свойства, которые применяются для прорисовки метки, значка и источника, можно использовать соответственно элементы labelField
, labelFunction
, iconField
, iconFunction
, sourceField
и sourceFunction
.
Реализация public function get data():Object
public function set data(value:Object):void
listData:ListData
[чтение и запись]
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9.0.28.0 |
Определяет или задает свойства списка, которые применяются к ячейке, например значения index
и selected
. Эти свойства списка автоматически обновляются после аннулирования ячейки.
Реализация public function get listData():ListData
public function set listData(value:ListData):void
selected:Boolean
[чтение и запись]
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9.0.28.0 |
Определяет или задает логическое значение, указывающее, выбрана ли данная ячейка. Значение true
указывает, что текущая ячейка выбрана; значение false
указывает на то, что она не выбрана.
Реализация public function get selected():Boolean
public function set selected(value:Boolean):void
public function setMouseState(state:String):void
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9.0.28.0 |
Задает указанное состояние мыши для текущей ячейки. Этот метод необходим для DataGrid, чтобы установить состояние мыши для всей строки, когда пользователь работает с одной ячейкой.
Параметры
| state:String — Строка, определяющая состояние мыши (например, "вверх" или "над").
|
public function setSize(width:Number, height:Number):void
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9.0.28.0 |
Задает размер данных в соответствии со значениями (в пикселах), заданными параметрами ширины
и высоты
.
Параметры
| width:Number — Ширина, при которой показывается средство визуализации ячейки в пикселах.
|
|
| height:Number — Высота, при которой показывается средство визуализации ячейки в пикселах.
|
В этом примере путем реализации класса ICellRenderer создается пользовательской средство визуализации ячейки.
Чтобы применить этот пример на практике, выполните следующие действия.
- Добавьте компоненты List и Button в библиотеку.
- Сохраните этот код под именем ICellRendererExample.as в том же каталоге, где и FLA-файл.
- Присвойте классу Document в FLA-файле значение ICellRendererExample.
package
{
import fl.controls.List;
import fl.data.DataProvider;
import fl.events.ListEvent;
import flash.display.Sprite;
import flash.events.Event;
public class ICellRendererExample extends Sprite
{
public function ICellRendererExample() {
var dp:DataProvider = new DataProvider();
var totalEntries:Number = 42;
var i:Number;
for(i=0; i<totalEntries; i++) {
dp.addItem( { label:Math.random(), data:null } );
}
var myList = new List();
myList.setSize(300,300);
myList.move(10,10);
myList.setStyle('cellRenderer', MyRenderer);
myList.dataProvider = dp;
addChild(myList);
}
}
}
Сохраните следующий код под именем MyRenderer.as в том же каталоге, где и FLA-файл.
package
{
import fl.controls.LabelButton;
import fl.controls.listClasses.ICellRenderer;
import fl.controls.listClasses.ListData;
public class MyRenderer extends LabelButton implements ICellRenderer {
private var _listData:ListData;
private var _data:Object;
public function MyRenderer() {
}
public function set listData(newListData:ListData):void {
_listData = newListData;
label = "Random: " + _listData.label;
drawRandomColor();
}
private function drawRandomColor():void {
graphics.beginFill(Math.random()*0xFFFFFF);
graphics.drawRect(0,0,20,20);
graphics.endFill();
}
public function get listData():ListData {
return _listData;
}
public function set data(newData:Object):void {
_data = newData;
}
public function get data():Object {
return _data;
}
}
}