加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

pure actionscript3 button in flex ,

发布时间:2020-12-15 01:17:00 所属栏目:百科 来源:网络整理
导读:css: .battlePropButton { upSkin: Embed(source="assets/battle/bat_prop1.png"); overSkin: Embed(source="assets/battle/bat_prop2.png"); downSkin: Embed(source="assets/battle/bat_prop3.png"); disabledSkin: ?Embed(source="assets/battle/bat_prop

css:

.battlePropButton
{
upSkin: Embed(source="assets/battle/bat_prop1.png");
overSkin: Embed(source="assets/battle/bat_prop2.png");
downSkin: Embed(source="assets/battle/bat_prop3.png");
disabledSkin: ?Embed(source="assets/battle/bat_prop3.png");
}


actionscript3 in flex,code is :?

package com.sandy.component.button.fl

{
import com.sandy.theme.SandyCSSManager;

import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.Sprite;
import flash.events.MouseEvent;


public class SandyFLButton extends Sprite
{
public function SandyFLButton()
{
super();
__init__();

}

private var _enabled:Boolean = true;
public function get enabled():Boolean
{
return _enabled;
}
public function set enabled(value:Boolean):void
{
_enabled = value;
if(_enabled){
hideAll();
upSkin.visible = true
}else{
hideAll();
disabledSkin.visible = true;
}
}




public var click_f:Function;

protected function __init__():void
{
buttonMode = true;

this.addEventListener(MouseEvent.MOUSE_DOWN,onDownHandle);
this.addEventListener(MouseEvent.MOUSE_OVER,onOverHandle);
this.addEventListener(MouseEvent.MOUSE_OUT,onOutHandle);
this.addEventListener(MouseEvent.MOUSE_UP,onUpHandle);
}

private function onUpHandle(e:MouseEvent):void
{
hideAll();
upSkin.visible = true
}

private function onDownHandle(e:MouseEvent):void
{
hideAll();
downSkin.visible = true
if(click_f!=null) click_f();
}

private function onOverHandle(e:MouseEvent):void
{
hideAll()
overSkin.visible = true
}

private function onOutHandle(e:MouseEvent):void
{
hideAll()
upSkin.visible = true
}

private function hideAll():void
{
upSkin.visible = false;
overSkin.visible = false;
downSkin.visible = false;
disabledSkin.visible = false;
}

public function dispose():void
{
this.removeEventListener(MouseEvent.MOUSE_DOWN,onDownHandle);
this.removeEventListener(MouseEvent.MOUSE_OVER,onOverHandle);
this.removeEventListener(MouseEvent.MOUSE_OUT,onOutHandle);
this.removeEventListener(MouseEvent.MOUSE_UP,onUpHandle);
}


private var _styleName:String;
public function get styleName():String
{
return _styleName;
}
public function set styleName(value:String):void
{
_styleName = value;

add_upSkin();
add_overSkin();
add_downSkin();
add_disableSkin();

upSkin.visible = true
}

private var upSkin:Bitmap;
private var overSkin:Bitmap;
private var downSkin:Bitmap;
private var disabledSkin:Bitmap;

private function add_upSkin():void
{
if(upSkin==null){
var cls:Class = SandyCSSManager.getCssStyle(styleName,"upSkin");
upSkin = new cls as Bitmap;
addChild(upSkin);
upSkin.visible = false
}
}

private function add_overSkin():void
{
if(overSkin==null){
var cls:Class = SandyCSSManager.getCssStyle(styleName,"overSkin");
overSkin = new cls as Bitmap;
addChild(overSkin);
overSkin.visible = false;
}
}

private function add_downSkin():void
{
if(downSkin==null){
var cls:Class = SandyCSSManager.getCssStyle(styleName,"downSkin");
downSkin = new cls as Bitmap;
addChild(downSkin);
downSkin.visible = false;
}
}

private function add_disableSkin():void
{
if(disabledSkin==null){
var cls:Class = SandyCSSManager.getCssStyle(styleName,"disabledSkin");
disabledSkin = new cls as Bitmap;
addChild(disabledSkin);
disabledSkin.visible = false;
}
}

}

}


/*************?SandyCSSManager ********************/

public static function getCssStyle(selector:String,styleProp:String):* { if(styleProp!="") { return StyleManager.getStyleDeclaration(selector).getStyle(styleProp); } else { return StyleManager.getStyleDeclaration(selector); } return null }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读