flex自定义按钮皮肤示例附图

先看效果图:

其中Test.mxml为:


代码如下:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
</fx:Declarations>
<mx:HBox horizontalCenter="0" verticalCenter="1">
<s:Button id="rightButton" skinClass="components.RightButtonSkin" />
<s:Button id="cancelButton" skinClass="components.CancelButtonSkin" />
<s:Button id="newStyleButton" skinClass="components.NewStyleButtonSkin"/>
<s:Button id="StyleButton" skinClass="components.StyleButtonSkin"/>
</mx:HBox>
</s:Application>

RightButtonSkin.mxml(确定按钮皮肤):


代码如下:

<?xml version="1.0" encoding="utf-8"?>
<s:Skin xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark" alpha.disabled=".5">

<!-- states -->
<s:states>
<s:State name="up" />
<s:State name="over" />
<s:State name="down" />
<s:State name="disabled" />
</s:states>

<!-- border and fill -->
<s:Rect id="rect" radiusX="4" radiusY="4" top="0" right="0"
bottom="0" left="0">
<s:fill>
<s:SolidColor color="0xFAFAFA" color.over="0xEEEEEE"
color.down="0xEEEEEE"/>
</s:fill>
<s:stroke>
<s:SolidColorStroke color="0xCCCCCC" weight="1"/>
</s:stroke>
</s:Rect>

<!-- highlight on top -->
<s:Rect radiusX="4" radiusY="4" top="2" right="2" left="2"
height="50%">
<s:fill>
<s:LinearGradient rotation="90">
<s:GradientEntry color="0xFFFFFF" alpha=".5"/>
<s:GradientEntry color="0xFFFFFF" alpha=".1"/>
</s:LinearGradient>
</s:fill>
</s:Rect>

<s:Label text="确定" color="0x131313"
textAlign="center"
fontFamily="宋体"
verticalAlign="middle"
horizontalCenter="0" verticalCenter="1"
left="30" right="30" top="8" bottom="8"
/>
</s:Skin>

NewStyleButtonSkin.mxml(新建按钮皮肤):

ps:新建按钮上面那个icon是画上去的


代码如下:

<?xml version="1.0" encoding="utf-8"?>
<s:Skin xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark" alpha.disabled=".5">

<!-- states -->
<s:states>
<s:State name="up" />
<s:State name="over" />
<s:State name="down" />
<s:State name="disabled" />
</s:states>

<!-- border and fill -->
<s:Rect id="rect" radiusX="4" radiusY="4" top="0" right="0"
bottom="0" left="0">
<s:fill>
<s:SolidColor color="0xFAFAFA" color.over="0xEEEEEE" color.down="0xEEEEEE"/>
</s:fill>

<s:stroke>
<s:SolidColorStroke color="0xCCCCCC" weight="1"/>
</s:stroke>
</s:Rect>

<!-- highlight on top -->
<s:Rect radiusX="4" radiusY="4" top="2" right="2" left="2"
height="50%">
<s:fill>
<s:LinearGradient rotation="90">
<s:GradientEntry color="0xFFFFFF" alpha=".5"/>
<s:GradientEntry color="0xFFFFFF" alpha=".1"/>
</s:LinearGradient>
</s:fill>
</s:Rect>
<s:Graphic>
<s:BitmapImage source="assets/round_plus2.png" left="8" top="6"/>
</s:Graphic>
<s:Label text="新建样式" color="0x131313"
fontFamily="宋体"
left="30" right="20" top="8" bottom="8"
/>

</s:Skin>

(0)

相关推荐

  • flex中如何用图像给按钮做皮肤

    复制代码 代码如下: <?xml version="1.0" encoding="utf-8"?> <s:SparkButtonSkin xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:fb="http://ns.adobe.com/flashbuilder/2009

  • JQuery给网页更换皮肤的方法

    本文实例讲述了JQuery给网页更换皮肤的方法.分享给大家供大家参考.具体分析如下: 为了更好的提升用户体验,很多网页都有换肤的功能,那么这是怎么实现的那,其实,换肤只不过是在对应的位置改了Css样式罢了!! 下面就演示如何简单的换肤 在设计HTmL代码时,注意一些小技巧,可以将皮肤选项按钮的id设置成和皮肤样式文件名称相同,这样皮肤切换的操作就简单多了样式连接要带一个有Id样式的连接表,通过操作该链接的href属性的值,从而实现换肤.即: 用户点击完就可以换肤了,但是,当用户刷新或者关闭浏览器

  • flex动态加载swf皮肤示例代码

    复制代码 代码如下: <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minW

  • ASP、PHP与javascript根据时段自动切换CSS皮肤的代码

    根据时间自动调整站点风格是不错的想法,这种根据时间自动调整站点风格也不是什么新鲜事,记得好久以前也见过类似的文章或方法,只不过当时没有特别注意.下面说一下它们的实现方法,目前网上有这样两种实现方法: 一.采用服务端的代码 ASP版本: <link rel="stylesheet" type="text/css" href=" <% if hour(now)<12 then response.write "morning.css&

  • C# SkinEngine控件 给窗体添加皮肤的方法

    自己写的一个日历记事本效果图 具体步骤: 1.添加控件SkinEngine.  1.右键"工具箱"."添加选项卡",取名"皮肤".   2.右键"皮肤","选择项"弹出对话框.  3.点击"浏览",找到IrisSkin2.dll,这时你会发现 SkinEngine 的控件已经被打上勾 - 确定.2.将 SkinEngine 控件添加到窗体上.3.把皮肤文件(以ssk为后缀名)放在&quo

  • python实现360皮肤按钮控件示例

    复制代码 代码如下: #!/usr/bin/python  #-*-coding:utf-8-*- from PyQt4.QtGui import *from PyQt4.QtCore import *from PyQt4.Qt import * class ChangeSkinWidget(QWidget): def __init__(self,parent = None):  super(ChangeSkinWidget,self).__init__(parent)  self.setFix

  • jQuery切换网页皮肤并保存到Cookie示例代码

    以下是源代码: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>j

  • JQuery UI皮肤定制

    http://jqueryui.com/themeroller/进入此页面便可以定制自己的UI皮肤了  如上图,在网页的左侧的tab栏上单击Gallery选项,便会在下方列出Jquery官方提供的皮肤,点击任意一套皮肤下面的Edit便会跳到Rool Your Own,在你选中的皮肤基础上便可定制出自己想要的皮肤,定制过程是所见即所得,所有用起来很方便,定制完后,点击Rool Your Own下方的Download theme跳到下载页面, 在下载页面右侧点击Download按钮就可以把皮肤下载到

  • js仿百度切换皮肤功能(html+css)

    js仿百度切换皮肤效果:(换肤出来一个div,选择你想要的图片,作为网页背景,保存) 要点:cookie保存状态 html代码: <body> <div id="header"> <div id="header_con"> <div class="dbg"><a href="javascript:;" onclick="showImgBox()">

  • flex中使用css样式修改TextArea滚动条的皮肤代码

    复制代码 代码如下: <mx:script> <![CDATA[ ........ var contentTextArea = new TextArea(); contentTextArea.setStyle("verticalScrollBarStyleName","mytextAreaStyle"); ........ ]]> </mx:Script> <mx:Style> .mytextAreaStyle{ /*

随机推荐