| Pakiet | fl.controls.dataGridClasses |
| Klasa | public class DataGridColumn |
| Dziedziczenie | DataGridColumn Object |
| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Istnieje możliwość określenia rodzaju składnika, który wyświetla w kolumnie DataGridColumn. Cechy możliwe do określenia to tekst w nagłówku kolumny oraz możliwość edytowania, sortowania i zmiany rozmiaru kolumny.
Powiązane elementy interfejsu API
| Właściwość | Zdefiniowane przez | ||
|---|---|---|---|
| cellRenderer : Object
Klasa służąca do renderowania elementów w tej kolumnie. | DataGridColumn | ||
![]() | constructor : Object
Odwołanie do obiektu klasy lub funkcji konstruktora, dotyczące danej instancji obiektu. | Object | |
| dataField : String
Określa nazwę pola lub właściwości w obiekcie dostarczającym dane, który jest skojarzony z daną kolumną. | DataGridColumn | ||
| editable : Boolean = true
Określa, czy elementy w kolumnie można edytować. | DataGridColumn | ||
| editorDataField : String = "text"
Określa nazwę właściwości edytora elementów zawierającej nowe dane dla tego elementu listy. | DataGridColumn | ||
| headerRenderer : Object
Klasa służące do renderowania nagłówka tej kolumny. | DataGridColumn | ||
| headerText : String
Nazwa kolumny, która ma być wyświetlana w jej nagłówku. | DataGridColumn | ||
| imeMode : String
Tryb działania edytora IME (Input Method Editor) | DataGridColumn | ||
| itemEditor : Object = fl.controls.dataGridClasses.DataGridCellEditor
Określa klasę instancji edytora elementów, której należy użyć dla tej kolumny, jeżeli jest edytowalna. | DataGridColumn | ||
| labelFunction : Function
Funkcja określająca tekst, który ma być wyświetlany w tej kolumnie. | DataGridColumn | ||
| minWidth : Number
Minimalna szerokość kolumny w pikselach. | DataGridColumn | ||
| resizable : Boolean = true
Określa, czy użytkownik może zmieniać szerokość kolumny. | DataGridColumn | ||
| sortable : Boolean = true
Określa, czy użytkownik może klikać nagłówek bieżącej kolumny w celu posortowania obiektu dostarczającego dane. | DataGridColumn | ||
| sortCompareFunction : Function
Funkcja wywołania zwrotnego, która jest wywoływana podczas sortowania danych w kolumnie. | DataGridColumn | ||
| sortDescending : Boolean = false
Określa, czy kolumna DataGridColumn ma być sortowana rosnąco, czy malejąco. | DataGridColumn | ||
| sortOptions : uint = 0
Jedna lub wiele zdefiniowanych stałych identyfikowanych za pomocą nazw lub liczb i rozdzielonych operatorem bitowego OR (|). | DataGridColumn | ||
| visible : Boolean
Określa, czy kolumna jest widoczna. | DataGridColumn | ||
| width : Number
Szerokość kolumny w pikselach. | DataGridColumn | ||
| Metoda | Zdefiniowane przez | ||
|---|---|---|---|
DataGridColumn(columnName:String = null)
Tworzy nową instancję klasy DataGridColumn. | DataGridColumn | ||
![]() |
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość. | Object | |
![]() |
Wskazuje, czy instancja klasy Object należy do łańcucha prototypów obiektu określonego jako parametr. | Object | |
Zwraca ciąg wyświetlany przez mechanizm renderujący dla danego obiektu danych. | DataGridColumn | ||
![]() |
Wskazuje, czy określona właściwość istnieje i jest przeliczalna. | Object | |
![]() |
Ustawia dostępność właściwości dynamicznej używanej w pętlach. | Object | |
![]() |
Zwraca ciąg reprezentujący obiekt — sformatowany zgodnie z konwencjami właściwymi dla ustawień regionalnych. | Object | |
Zwraca ciąg reprezentujący obiekt DataGridColumn. | DataGridColumn | ||
![]() |
Zwraca pierwotną wartość dla określonego obiektu. | Object | |
cellRenderer | właściwość |
cellRenderer:Object| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Klasa służąca do renderowania elementów w tej kolumnie. Typem tej właściwości może być Class, Sprite lub String. Jeśli typem właściwości jest String, wartość ciągu znaków musi być w pełni kwalifikowaną nazwą klasy.
Wartością domyślną jest null.
Implementacja
public function get cellRenderer():Object public function set cellRenderer(value:Object):voidPowiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
import fl.controls.dataGridClasses.DataGridColumn;
var dgc:DataGridColumn = new DataGridColumn("Field");
dgc.cellRenderer = "MyCustomCellRendererClass";
dg.addColumn(dgc);
dataField | właściwość |
public var dataField:String| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Określa nazwę pola lub właściwości w obiekcie dostarczającym dane, który jest skojarzony z daną kolumną.
editable | właściwość |
public var editable:Boolean = true| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Określa, czy elementy w kolumnie można edytować. Wartość true oznacza, że elementy kolumny można edytować; wartość false oznacza, że nie można ich edytować.
Gdy ta właściwość jest ustawiona na true i właściwość editable obiektu DataGrid także jest ustawiona na true, elementy w kolumnie można edytować indywidualnie, klikając je lub przechodząc do nich za pomocą klawisza Tab i klawiszy ze strzałkami.
Wartością domyślną jest true.
editorDataField | właściwość |
public var editorDataField:String = "text"| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Określa nazwę właściwości edytora elementów zawierającej nowe dane dla tego elementu listy.
Na przykład domyślny edytor itemEditor to składnik TextInput, dlatego domyślną wartością właściwości editorDataField jest "text". Ta wartość określa właściwość text składnika TextInput.
Wartością domyślną jest "text".
headerRenderer | właściwość |
headerRenderer:Object| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Klasa służące do renderowania nagłówka tej kolumny.
Typem tej właściwości może być Class, Sprite lub String. Jeśli typem właściwości jest String, wartość ciągu znaków musi być w pełni kwalifikowaną nazwą klasy.
Wartością domyślną jest null.
Implementacja
public function get headerRenderer():Object public function set headerRenderer(value:Object):voidPowiązane elementy interfejsu API
headerText | właściwość |
headerText:String| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Nazwa kolumny, która ma być wyświetlana w jej nagłówku. Domyślnie w charakterze nazwy kolumny składnik DataGrid używa wartości właściwości dataField.
Implementacja
public function get headerText():String public function set headerText(value:String):voidPrzykład ( Sposób korzystania z tego przykładu )
import fl.controls.DataGrid;
import fl.controls.dataGridClasses.DataGridColumn;
import fl.data.DataProvider;
var dp:DataProvider = new DataProvider();
dp.addItem({name:"Person A", sales:13453});
dp.addItem({name:"Person B", sales:23432});
dp.addItem({name:"Person C", sales:9454});
var nameCol:DataGridColumn = new DataGridColumn("name");
nameCol.headerText = "Employee:";
var salesCol:DataGridColumn = new DataGridColumn("sales");
salesCol.headerText = "Sales:";
salesCol.labelFunction = currencyFormatter;
salesCol.sortOptions = Array.NUMERIC;
var myDataGrid:DataGrid = new DataGrid();
myDataGrid.addColumn(nameCol);
myDataGrid.addColumn(salesCol);
myDataGrid.dataProvider = dp;
myDataGrid.move(10, 10);
myDataGrid.setSize(320, 240);
addChild(myDataGrid);
function currencyFormatter(item:Object):String {
return "$" + item.sales.toFixed(0);
}
imeMode | właściwość |
imeMode:String| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Tryb działania edytora IME (Input Method Editor) Edytor IME umożliwia użytkownikom wprowadzanie tekstu w języku chińskim, japońskim i koreańskim. Klasa flash.system.IMEConversionMode definiuje stałe, których można używać jako poprawnych wartości tej właściwości.
Jeśli ta właściwość ma wartość null, tryb działania edytora IME jest równy wartości właściwości imeMode składnika DataGrid.
Wartością domyślną jest null.
Implementacja
public function get imeMode():String public function set imeMode(value:String):voidPowiązane elementy interfejsu API
itemEditor | właściwość |
public var itemEditor:Object = fl.controls.dataGridClasses.DataGridCellEditor| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Określa klasę instancji edytora elementów, której należy użyć dla tej kolumny, jeżeli jest edytowalna. Typem tej właściwości może być Class, Sprite lub String. Jeśli typem właściwości jest String, wartość ciągu znaków musi być w pełni kwalifikowaną nazwą klasy.
Wartością domyślną jest "fl.controls.dataGridClasses.DataGridCellEditor".
Przykład ( Sposób korzystania z tego przykładu )
import fl.controls.dataGridClasses.DataGridColumn;
var dgc:DataGridColumn = new DataGridColumn("Field");
dgc.itemEditor = "MyCustomItemEditorClass";
dg.addColumn(dgc);
labelFunction | właściwość |
labelFunction:Function| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Funkcja określająca tekst, który ma być wyświetlany w tej kolumnie. Domyślnie w kolumnie wyświetlany jest tekst z pola danych o nazwie identycznej z nazwą kolumny. Jednak w jednej kolumnie może być wyświetlany tekst z więcej niż jednego pola danych lub treść, której pierwotny format nie jest odpowiedni do wyświetlania. W tym celu używa się właściwości labelFunction określającej funkcję wywołania zwrotnego.
Jeśli zdefiniowana jest zarówno właściwość labelFunction, jak i labelField, priorytet ma właściwość labelFunction.
Wartością domyślną jest null.
Implementacja
public function get labelFunction():Function public function set labelFunction(value:Function):voidPrzykład ( Sposób korzystania z tego przykładu )
import fl.controls.DataGrid;
import fl.controls.ScrollPolicy;
import fl.controls.dataGridClasses.DataGridColumn;
import fl.data.DataProvider;
var i:uint;
var totalRows:uint = 16;
var dp:DataProvider = new DataProvider();
for (i = 0; i < totalRows; i++) {
dp.addItem({col1:getRandomNumber(), col2:getRandomNumber(), col3:getRandomNumber(), col4:getRandomNumber()});
}
var c1:DataGridColumn = new DataGridColumn("col1");
c1.sortOptions = Array.NUMERIC;
var c2:DataGridColumn = new DataGridColumn("col2");
c2.sortOptions = Array.NUMERIC;
var c3:DataGridColumn = new DataGridColumn("col3");
c3.sortOptions = Array.NUMERIC;
c3.labelFunction = currencyFormatter;
var dg:DataGrid = new DataGrid();
dg.setSize(200, 300);
dg.addColumn(c1);
dg.addColumn(c2);
dg.addColumn(c3);
dg.dataProvider = dp;
addChild(dg);
function getRandomNumber():Number {
return Math.random() * 100;
}
function currencyFormatter(data:Object):String {
var value:Number = Number(data.col3);
return "$" + value.toFixed(2);
}
labelFunction, jak i sortCompareFunction:
import fl.controls.DataGrid;
import fl.controls.dataGridClasses.DataGridColumn;
import fl.data.DataProvider;
var data:XML = <data>
<item name="Employee A" isManager="1" />
<item name="Employee B" isManager="0" />
<item name="Employee C" isManager="1" />
</data>;
var dp:DataProvider = new DataProvider(data);
var nameDGC:DataGridColumn = new DataGridColumn("name");
nameDGC.sortCompareFunction = isManager;
nameDGC.labelFunction = nameLabelFunction;
var myDataGrid:DataGrid = new DataGrid()
myDataGrid.addColumn(nameDGC);
myDataGrid.dataProvider = dp;
myDataGrid.width = 200;
myDataGrid.rowCount = myDataGrid.length;
myDataGrid.move(10, 10);
addChild(myDataGrid);
function nameLabelFunction(item:Object):String {
var managerString:String = "";
if (item.isManager == "1") {
managerString = " (Manager)";
}
return item.name + managerString;
}
function isManager(itemA:Object, itemB:Object):int {
if (itemA.isManager > itemB.isManager) {
return -1;
} else if (itemA.isManager < itemB.isManager) {
return 1;
} else {
return 0;
}
}
minWidth | właściwość |
minWidth:Number| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Minimalna szerokość kolumny w pikselach.
Wartością domyślną jest 20.
Implementacja
public function get minWidth():Number public function set minWidth(value:Number):voidPowiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
import fl.controls.DataGrid;
import fl.controls.dataGridClasses.DataGridColumn;
import fl.data.DataProvider;
import fl.events.DataGridEvent;
var data:XML = <data>
<row col1="item 1.A" col2="item 1.B" col3="item 1.C" />
<row col1="item 2.A" col2="item 2.B" col3="item 2.C" />
<row col1="item 3.A" col2="item 3.B" col3="item 3.C" />
</data>;
var dp:DataProvider = new DataProvider(data);
var c1:DataGridColumn = new DataGridColumn("col1");
c1.minWidth = 100;
var c2:DataGridColumn = new DataGridColumn("col2");
var c3:DataGridColumn = new DataGridColumn("col3");
var myDataGrid:DataGrid = new DataGrid();
myDataGrid.addColumn(c1);
myDataGrid.addColumn(c2);
myDataGrid.addColumn(c3);
myDataGrid.dataProvider = dp;
myDataGrid.move(10, 10);
myDataGrid.setSize(300, 200);
myDataGrid.addEventListener(DataGridEvent.COLUMN_STRETCH, columnStretchHandler);
addChild(myDataGrid);
function columnStretchHandler(event:DataGridEvent):void {
var column:DataGridColumn;
for each (column in myDataGrid.columns) {
trace(column.dataField, "width:" + column.width, "minWidth:" + column.minWidth);
}
trace("---");
}
resizable | właściwość |
public var resizable:Boolean = true| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Określa, czy użytkownik może zmieniać szerokość kolumny. Wartość true oznacza, że użytkownik może zmieniać szerokość kolumny; wartość false oznacza, że użytkownik nie może zmieniać szerokości kolumny.
Wartością domyślną jest true.
sortable | właściwość |
public var sortable:Boolean = true| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Określa, czy użytkownik może klikać nagłówek bieżącej kolumny w celu posortowania obiektu dostarczającego dane. Wartość true oznacza, że kolumnę można posortować, klikając jej nagłówek; wartość false oznacza, że nie można posortować kolumny, klikając w jej nagłówek.
Wartością domyślną jest true.
Przykład ( Sposób korzystania z tego przykładu )
import fl.controls.DataGrid;
import fl.controls.dataGridClasses.DataGridColumn;
import fl.data.DataProvider;
import fl.events.DataGridEvent;
var data:XML = <dataProvider>
<data col1="Person A" col2="11.383" />
<data col1="Person B" col2="3.399" />
<data col1="Person C" col2="25.624" />
</dataProvider>
var dp:DataProvider = new DataProvider(data);
var c1:DataGridColumn = new DataGridColumn("col1");
var c2:DataGridColumn = new DataGridColumn("col2");
c2.sortable = false;
var myDataGrid:DataGrid = new DataGrid();
myDataGrid.addColumn(c1);
myDataGrid.addColumn(c2);
myDataGrid.dataProvider = dp;
myDataGrid.move(10, 10);
myDataGrid.setSize(160, 120);
addChild(myDataGrid);
sortable kolumny jest ustawiana na false:
import fl.controls.DataGrid;
import fl.controls.dataGridClasses.DataGridColumn;
import fl.data.DataProvider;
import fl.events.DataGridEvent;
var xmlDP:XML = <items>
<item name="Person 1" bio="Person 1 bio" />
<item name="Person 2" bio="Person 2 bio" />
</items>;
var dp:DataProvider = new DataProvider(xmlDP);
var nameCol:DataGridColumn = new DataGridColumn("name");
nameCol.headerText = "Name:";
var bioCol:DataGridColumn = new DataGridColumn("bio");
bioCol.headerText = "Bio:";
bioCol.sortable = false;
var myDataGrid:DataGrid = new DataGrid();
myDataGrid.addColumn(nameCol);
myDataGrid.addColumn(bioCol);
myDataGrid.dataProvider = dp;
myDataGrid.rowCount = dp.length;
myDataGrid.width = 200;
myDataGrid.move(10, 10);
myDataGrid.addEventListener(DataGridEvent.HEADER_RELEASE, headerReleaseHandler);
addChild(myDataGrid);
function headerReleaseHandler(event:DataGridEvent):void {
var myDG:DataGrid = event.currentTarget as DataGrid;
trace("dataField:" + event.dataField);
trace("columnIndex:" + event.columnIndex);
trace("{DataGrid}.sortDescending:" + myDG.sortDescending);
trace("{DataGridColumn}.sortDescending:" + myDG.getColumnAt(event.columnIndex).sortDescending);
trace("");
}
sortCompareFunction | właściwość |
sortCompareFunction:Function| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Funkcja wywołania zwrotnego, która jest wywoływana podczas sortowania danych w kolumnie. Gdy ta właściwość nie jest określona, dane są sortowane według ciągów znaków lub liczb, w zależności od właściwości sortOptions. Określenie właściwości sortCompareFunction umożliwia utworzenie własnej niestandardowej metody sortowania dla bieżącej kolumny tabeli danych.
Wartością domyślną jest null.
Implementacja
public function get sortCompareFunction():Function public function set sortCompareFunction(value:Function):voidPowiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
labelFunction, jak i sortCompareFunction:
import fl.controls.DataGrid;
import fl.controls.dataGridClasses.DataGridColumn;
import fl.data.DataProvider;
var data:XML = <data>
<item name="Employee A" isManager="1" />
<item name="Employee B" isManager="0" />
<item name="Employee C" isManager="1" />
</data>;
var dp:DataProvider = new DataProvider(data);
var nameDGC:DataGridColumn = new DataGridColumn("name");
nameDGC.sortCompareFunction = isManager;
nameDGC.labelFunction = nameLabelFunction;
var myDataGrid:DataGrid = new DataGrid()
myDataGrid.addColumn(nameDGC);
myDataGrid.dataProvider = dp;
myDataGrid.width = 200;
myDataGrid.rowCount = myDataGrid.length;
myDataGrid.move(10, 10);
addChild(myDataGrid);
function nameLabelFunction(item:Object):String {
var managerString:String = "";
if (item.isManager == "1") {
managerString = " (Manager)";
}
return item.name + managerString;
}
function isManager(itemA:Object, itemB:Object):int {
if (itemA.isManager > itemB.isManager) {
return -1;
} else if (itemA.isManager < itemB.isManager) {
return 1;
} else {
return 0;
}
}
sortDescending | właściwość |
public var sortDescending:Boolean = false| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Określa, czy kolumna DataGridColumn ma być sortowana rosnąco, czy malejąco. Wartość true oznacza, że kolumna DataGridColumn jest sortowana w porządku malejącym; wartość false oznacza, że kolumna DataGridColum jest sortowana w porządku rosnącym.
Wartością domyślną jest false.
sortOptions | właściwość |
public var sortOptions:uint = 0| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Jedna lub wiele zdefiniowanych stałych identyfikowanych za pomocą nazw lub liczb i rozdzielonych operatorem bitowego OR (|). Te stałe służą do określania operacji sortowania.
Wartością domyślną jest 0.
Powiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
sortOptions do wyboru liczbowego sortowania kolumny tabeli danych:
import fl.data.DataProvider;
import fl.controls.dataGridClasses.DataGridColumn;
var data:XML = <players>
<player name="Player 1" score="1234" />
<player name="Player 2" score="198" />
<player name="Player 3" score="987" />
</players>;
var dp:DataProvider = new DataProvider(data);
var nameDGC:DataGridColumn = new DataGridColumn("name");
var scoreDGC:DataGridColumn = new DataGridColumn("score");
scoreDGC.sortOptions = Array.NUMERIC;
dg.addColumn(nameDGC);
dg.addColumn(scoreDGC);
dg.dataProvider = dp;
visible | właściwość |
visible:Boolean| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Określa, czy kolumna jest widoczna. Wartość true oznacza, że kolumna jest widoczna; wartość false oznacza, że kolumna jest niewidoczna.
Wartością domyślną jest true.
Implementacja
public function get visible():Boolean public function set visible(value:Boolean):voidPrzykład ( Sposób korzystania z tego przykładu )
visible każdej z tych kolumn, klikając odpowiednią instancję składnika Button na stole montażowym.
import fl.controls.Button;
import fl.controls.DataGrid;
import fl.controls.dataGridClasses.DataGridColumn;
import fl.data.DataProvider;
var dp:DataProvider = new DataProvider();
dp.addItem({name:"Person A", average:0.297});
dp.addItem({name:"Person B", average:0.288});
dp.addItem({name:"Person C", average:0.310});
var nameCol:DataGridColumn = new DataGridColumn("name");
nameCol.headerText = "Name:";
var averageCol:DataGridColumn = new DataGridColumn("average");
averageCol.headerText = "Average:";
averageCol.labelFunction = numberFormatter;
averageCol.sortOptions = Array.NUMERIC;
averageCol.visible = false;
var myDataGrid:DataGrid = new DataGrid();
myDataGrid.addColumn(nameCol);
myDataGrid.addColumn(averageCol);
myDataGrid.dataProvider = dp;
myDataGrid.rowCount = dp.length;
myDataGrid.width = 320;
myDataGrid.move(10, 10);
addChild(myDataGrid);
var nameButton:Button = new Button();
nameButton.label = "Toggle name";
nameButton.toggle = true;
nameButton.selected = nameCol.visible;
nameButton.move(myDataGrid.x, myDataGrid.y + myDataGrid.height + 10);
nameButton.addEventListener(Event.CHANGE, changeHandler);
addChild(nameButton);
var averageButton:Button = new Button();
averageButton.label = "Toggle average";
averageButton.toggle = true;
averageButton.selected = averageCol.visible;
averageButton.move(nameButton.x + nameButton.width + 10, nameButton.y);
averageButton.addEventListener(Event.CHANGE, changeHandler);
addChild(averageButton);
function numberFormatter(item:Object):String {
return Number(item.average).toFixed(3);
}
function changeHandler(event:Event):void {
var colIndex:int = -2;
var col:DataGridColumn;
switch (event.currentTarget) {
case nameButton:
colIndex = myDataGrid.getColumnIndex("name");
break;
case averageButton:
colIndex = myDataGrid.getColumnIndex("average");
break;
default:
return;
}
if (colIndex > -1) {
col = myDataGrid.getColumnAt(colIndex);
col.visible = !col.visible;
myDataGrid.removeColumnAt(colIndex);
myDataGrid.addColumnAt(col, colIndex);
}
myDataGrid.spaceColumnsEqually();
}
width | właściwość |
width:Number| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Szerokość kolumny w pikselach.
Wartością domyślną jest 100.
Implementacja
public function get width():Number public function set width(value:Number):voidPowiązane elementy interfejsu API
DataGridColumn | () | Konstruktor |
public function DataGridColumn(columnName:String = null)| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Tworzy nowe wystąpienie klasy DataGridColumn.
ParametrycolumnName:String (default = null) — Nazwa kolumny, która ma być wyświetlana w jej nagłówku. Jeśli nazwa nie zostanie określona, używana jest wartość właściwości dataField.
|
Powiązane elementy interfejsu API
itemToLabel | () | metoda |
public function itemToLabel(data:Object):String| Wersja języka: | ActionScript 3.0 |
| Wersja produktu: | Flash CS3 |
| Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Zwraca ciąg wyświetlany przez mechanizm renderujący dla danego obiektu danych. Jeśli obiekt DataGridColumn lub składnik DataGrid, do którego on należy, ma właściwość labelFunction różną od null, funkcja jest stosowana do obiektu danych. W przeciwnym razie metoda wyodrębnia zawartość pola określonego przez właściwość dataField lub pobiera wartość obiektu danych w postaci ciągu znaków. Jeśli metoda nie może przekształcić parametru na ciąg znaków, zwraca pojedynczą spację.
Parametry
data:Object — Obiekt, który ma być renderowany.
|
String — Możliwy do wyświetlenia ciąg znaków uzyskany na podstawie określonego obiektu data.
|
toString | () | metoda |
- Dodaj składniki DataGrid i Button do biblioteki.
- Zapisz ten kod pod nazwą DataGridColumnExample.as w tym samym katalogu, co plik FLA.
- Ustaw właściwość DocumentClass w pliku FLA na wartość DataGridColumnExample.
package
{
import flash.display.Sprite;
import flash.events.MouseEvent;
import fl.data.DataProvider;
import fl.events.DataChangeEvent;
import fl.controls.DataGrid;
import fl.controls.Button;
import fl.controls.dataGridClasses.DataGridColumn;
public class DataGridColumnExample extends Sprite
{
private var dg:DataGrid;
private var dp:DataProvider;
private var names:Array = [ "Mary", "Bob", "Sue", "Joe" ];
public function DataGridColumnExample() {
dp = new DataProvider();
dp.addEventListener(DataChangeEvent.DATA_CHANGE,dataChanged);
dg = new DataGrid();
addChild(dg);
dg.move(10,45);
dg.setSize(450,300);
dg.addColumn(new DataGridColumn("name"));
dg.addColumn(new DataGridColumn("phone"));
dg.addColumn(new DataGridColumn("email"));
var firstColumn = dg.columns[0];
firstColumn.resizable = false;
var secondColumn = dg.columns[1];
secondColumn.sortable = false;
var thirdColumn = dg.columns[2];
thirdColumn.sortable = false;
var addContactBtn:Button = new Button();
addContactBtn.label = "Add Contact";
addContactBtn.move(10,10);
addContactBtn.addEventListener(MouseEvent.CLICK, addContact);
addChild(addContactBtn);
}
private function getRandomPhone():String {
return randomDigit()+randomDigit()+randomDigit()+"-"+randomDigit()+randomDigit()+randomDigit()+"-"+randomDigit()+randomDigit()+randomDigit()+randomDigit();
}
private function randomDigit():String {
return String(Math.round(Math.random()*10)%10);
}
private function getRandomName():String {
return names[Math.round(Math.random()*names.length)%names.length];
}
private function addContact(e:MouseEvent):void {
var randomName:String = getRandomName()
dp.addItem( { name: randomName, phone: getRandomPhone(), email: randomName + "@fictitious.com" } );
}
private function dataChanged(e:DataChangeEvent):void {
var changedItems:Array = e.items;
dg.addItem(changedItems[0]);
}
}
}
Tue Jun 12 2018, 12:06 PM Z
Ukryj dziedziczone właściwości publiczne
Pokaż dziedziczone właściwości publiczne