flex3可编程皮肤

flex3可编程皮肤
效果图:

[img]http://dl.iteye.com/upload/attachment/556905/49816d0e-16a3-39c0-8ff4-fe17842894b4.png[/img]


package com
{
import mx.skins.ProgrammaticSkin;

public class MySkin extends ProgrammaticSkin
{
public function MySkin()
{
super();
}
override protected function updateDisplayList(unscaledWidth:Number,
unscaledHeight:Number):void
{
var line:Number=4;
var backgroundColoe:Number;
switch(name)
{
case "upSkin":
backgroundColoe=0xEA800C;
break;
case "overSkin":
backgroundColoe=0xF8B872;
break;
case "downSkin":
backgroundColoe=0xB06109;
break;
case "disabledSkin":
backgroundColoe=0xB06109;
break;
}

graphics.clear();
graphics.beginFill(backgroundColoe);
graphics.drawEllipse(0,0,unscaledWidth,unscaledHeight);
graphics.endFill();
}
}
}

mxml使用
<mx:Style>
.mySkin
{
up-skin:ClassReference('com.MySkin');
over-skin:ClassReference('com.MySkin');
down-skin:ClassReference('com.MySkin');
disabled-skin:ClassReference('com.MySkin');
}
</mx:Style>
<!-- 其中'com.MySkin'为自定义皮肤的as类路径 -->
<mx:Button id="demo" label="demotext" styleName="mySkin">

</mx:Button>

flex-css渐变色
css-code
.myColor{
fill-alphas:0.33,0.67,0.75,0.65;
fill-colors:#000000,#006666,#00ff99,#cccc00;
}
mxml-code:
<mx:Panel width="446" height="226" headerColors="[0xEA800C,0xF8B872]">
borderSkin创建背景图片的应用(类似BackgroundImage)

package
{
import flash.display.Bitmap;
import flash.display.BitmapData;
import mx.skins.RectangularBorder;

public class MetalBackground extends RectangularBorder
{
[Embed(source='file.png')]
private var backgroundImageClass:Class;
private var backgroundBitmapData:BitmapData;

public function MetalBackground()
{
super();
var backgroundImage:Bitmap = new backgroundImageClass();
backgroundBitmapData = new BitmapData(backgroundImage.width,backgroundImage.height);
backgroundBitmapData.draw(backgroundImage);
}

override protected function updateDisplayList(unscaledWidth:Number,unscaledHeight:Number ):void
{
super.updateDisplayList(unscaledWidth,unscaledHeight );
var cornerRadius:Number = getStyle("cornerRadius");
graphics.clear();
graphics.beginBitmapFill( backgroundBitmapData );
graphics.drawRoundRectComplex(0,0,unscaledWidth,unscaledHeight,cornerRadius,cornerRadius,cornerRadius,cornerRadius );
graphics.endFill();
}
}
}

mxml应用
<mx:Canvas borderSkin="MetalBackground" x="576" y="49" width="142" height="169">
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值