/ / Rahmenfarbe in AdvancedDataGrid anzeigengewählte Zeile in Flex - actionscript-3, flex, datagrid, flex4.5, advanceddatagrid

Zeige die Rahmenfarbe in der AdvancedDataGrid ausgewählten Zeile in Flex - actionscript-3, flex, datagrid, flex4.5, advanceddatagrid

Wie kann ich die borderColor der ausgewählten Zeile in AdvancedDataGrid in Flex 4.6 anzeigen. Sie können das folgende Bild für Ihre Referenz sehen.

Bildbeschreibung hier eingeben

Antworten:

2 für die Antwort № 1

Die ausgewählte Zeile befindet sich in der AdvancedDataGrid realisiert durch gewidmet Sprite, die als Zeichenfläche für das Zeichnen verwendet wird. Um einen Rahmen in der Auswahlmarkierung zu erstellen, müssen Sie eine benutzerdefinierte Klasse basierend auf dem erstellen AdvancedDataGrid und überschreiben Sie die geschützte Methode drawSelectionIndicator.

Das folgende Beispiel sollte eine Auswahlmarkierung mit einem 1 Pixel breiten roten Rand erzeugen:

public class GridWithBorderedSelectionMarker extends AdvancedDataGrid {
override protected function drawSelectionIndicator(
indicator:Sprite, x:Number, y:Number, width:Number,
height:Number, color:uint,
itemRenderer:IListItemRenderer):void {
if (isRowSelectionMode()) {
width = unscaledWidth - viewMetrics.left - viewMetrics.right;
}
var borderColor:uint = 0xff0000;
var g:Graphics = Sprite(indicator).graphics;
g.clear();
g.beginFill(borderColor);
g.drawRect(0, 0, width, height);
g.beginFill(color);
g.drawRect(1, 1, width - 2, height - 2);
g.endFill();
indicator.x = x;
indicator.y = y;
}
}