2016-07-21 2 views

答えて

2

選択された行は、描画のためのキャンバスとして使用される専用Spriteにより実現AdvancedDataGrid、です。選択マーカーに罫線を作成するには、AdvancedDataGridに基づいてカスタムクラスを作成し、保護されたメソッドdrawSelectionIndicatorをオーバーライドする必要があります。

次の例では、1ピクセル幅の赤い枠で選択マーカーを生成する必要があります

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; 
    } 
} 
+0

素晴らしいことです!どうもありがとうございます。しかし、私は、選択せずに赤い枠線内の全行を強調表示したいいくつかの条件に基づいて異なる要件を持っています。私の選択した行は、ハイライトされた行とは異なります。これどうやってするの。 – BikrantSingh

関連する問題