--- In [email protected], "chinaloveshisiling"
<chinaloveshisil...@...> wrote:
>
> --------------
> |number(Header)|
> -------------- //I want to remove this line
> | 1 |
> ---------------
> | 2 |
> ---------------
>
> How to delete the top border of the the first row content.
>

The SkinClass



package

{

import flash.display.GradientType;



import mx.core.EdgeMetrics;

import mx.core.UIComponent;

import mx.skins.Border;

import mx.skins.halo.HaloColors;

import mx.styles.StyleManager;

import mx.utils.ColorUtil;



/**



* The skin for the background of a datagrid::headerBackgroundSkin.



*/



public class HeadSkin extends Border

{

// include "../../core/Version.as";

//————————————————————————–

//

// Class variables

//

//————————————————————————–



/**

* @private

*/



private static var cache:Object = {};

//————————————————————————–

//

// Class methods

//

//————————————————————————–



/**

* @private

* Several colors used for drawing are calculated from the base colors

* of the component (themeColor, borderColor and fillColors).

* Since these calculations can be a bit expensive,

* we calculate once per color set and cache the results.

*/



private static function
calcDerivedStyles(themeColor:uint,fillColor0:uint,fillColor1:uint):Objec\
t

{

var key:String = HaloColors.getCacheKey(themeColor,fillColor0,
fillColor1);

if (!cache[key])

{

var o:Object = cache[key] = {};

// Cross-component styles.

HaloColors.addHaloColors(o, themeColor, fillColor0, fillColor1);

}

return cache[key];

}



//————————————————————————–

//

// Constructor

//

//————————————————————————–



/**

* Constructor.

*/



public function HeadSkin()

{

super();

}



//————————————————————————–

//

// Overridden properties

//

//————————————————————————–

//———————————-

// borderMetrics

//———————————-



/**

* @private

* Storage for the borderMetrics property.

*/



private var _borderMetrics:EdgeMetrics = new EdgeMetrics(0, 0, 0, 0);



/**

* @private

*/



override public function get borderMetrics():EdgeMetrics

{

return _borderMetrics;

}



//———————————-

// measuredWidth

//———————————-



/**

* @private

*/



override public function get measuredWidth():Number

{

return UIComponent.DEFAULT_MEASURED_MIN_WIDTH;

}



//———————————-

// measuredHeight

//———————————-



/**

* @private

*/



override public function get measuredHeight():Number

{

return UIComponent.DEFAULT_MEASURED_MIN_HEIGHT;

}



//————————————————————————–

//

// Overridden methods

//

//————————————————————————–



/**

* @private

*/



override protected function updateDisplayList(w:Number, h:Number):void

{

super.updateDisplayList(w, h);

// User-defined styles.

var bevel:Boolean = getStyle("bevel");

var borderColor:uint = getStyle("borderColor");

var cornerRadius:Number = getStyle("cornerRadius");

var fillAlphas:Array = getStyle("fillAlphas");

var fillColors:Array = getStyle("fillColors");

StyleManager.getColorNames(fillColors);

var themeColor:uint = getStyle("themeColor");



// Derivative styles.

var derStyles:Object = calcDerivedStyles(themeColor,
fillColors[0],fillColors[1]);

var borderColorDrk1:Number = ColorUtil.adjustBrightness2(borderColor,
-25);

var cr:Number = Math.max(0, cornerRadius);

var cr1:Number = Math.max(0, cornerRadius -1);

var upFillColors:Array = [ fillColors[0], fillColors[1] ];

var upFillAlphas:Array = [ fillAlphas[0], fillAlphas[1] ];

graphics.clear();



// button border/edge



//drawRoundRect(0,0,w,h,cr,[borderColor,borderColorDrk1],1,verticalGradi\
entMatrix(0,0,w,h),GradientType.LINEAR,
null,{x:1,y:1,w:w-2,h:h-2,r:cr1});





// button fill

drawRoundRect(1,1,w-2,h-2,cr1,upFillColors,
upFillAlphas,verticalGradientMatrix(1,1,w-2,h-2));





}



}

}



How to use it

<mx:DataGrid headerBackgroundSkin="HeadSkin"




Reply via email to