Heim >php教程 >PHP开发 >Das benutzerdefinierte Flex-DataGrid implementiert die Änderung der Hintergrundfarbe basierend auf einem bestimmten Attributwert des Elements

Das benutzerdefinierte Flex-DataGrid implementiert die Änderung der Hintergrundfarbe basierend auf einem bestimmten Attributwert des Elements

高洛峰
高洛峰Original
2016-12-27 16:55:511351Durchsuche

Der benutzerdefinierte erweiterte DataGrid-Code (als Klasse) lautet wie folgt:

package czgh.components 
{ 
import flash.display.Sprite; 
 
import mx.controls.DataGrid; 
import mx.core.UIComponent; 
 
public class OptionalDataGrid extends DataGrid 
{ 
private var _rowColorFunction:Function; 
private var _customed:Boolean; 
private var _customerColor:uint=0; 
public function OptionalDataGrid() 
{ 
super(); 
} 
 
override protected function drawRowBackground(s:Sprite, rowIndex:int, y:Number, height:Number, color:uint, dataIndex:int):void
{ 
color=0XFFFFFF; 
 
if(this._rowColorFunction != null) 
{ 
if (dataIndex < this.dataProvider.length) 
{ 
var item:Object=this.dataProvider.getItemAt(dataIndex);//设定颜色 
color=this._rowColorFunction.call(this, item, color); 
} 
} 
 
 
 
super.drawRowBackground(s, rowIndex, y, height, color, dataIndex); 
} 
 
override protected function drawHeaderBackground(headerBG:UIComponent):void
{ 
headerBG.setStyle("borderVisible","false"); 
} 
 
 
 
public function set rowColorFunction(rowColorFunction:Function):void
{ 
this._rowColorFunction=rowColorFunction; 
} 
 
public function get rowColorFunction():Function 
{ 
return this._rowColorFunction; 
} 
 
 
} 
}

Implementieren Sie das benutzerdefinierte DataGrid in mxml und verwenden Sie seine rowColorFunction-Methode

//通过比较每条记录中dataField为act和stand的大小决定该条记录的背景颜色 
private function setCustomColor(item:Object, color:uint):uint
{ 
if (Number(item["act"])<Number(item["stand"])) 
{ 
return 0x7bbfea; 
} 
 
return color; 
}

Mehr Flex Custom Define DataGrid Um das Ändern der Hintergrundfarbe basierend auf einem bestimmten Attributwert eines Eintrags zu implementieren, achten Sie bitte auf die chinesische PHP-Website.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn