首 页 ┆ 源码下载 ┆ IT学院 ┆ 字体下载 ┆ 模板下载 ┆ 源码发布 ┆ 广告合作 ┆ 网站地图
► 设为首页
► 加入收藏
► 联系我们
源码下载 >> ASP源码 | PHP源码 | ASP.net源码 | JSP源码 | CGI源码 | VC/C++源码 | VB源码 | Delphi源码 | Flash源码
文章学院 >> 网络编程 | 网页设计 | 图形图象 | 数据库 | 服务器 | 网络媒体 | 网络安全 | 操作系统 | 办公软件 | 软件开发 | 黑客知识
字体下载 >> 精制字体 | 非英字体 | 艺术字体 | 著名字体 | 哥特式 | 简单字体 | 手写体 | 节假日 | 图案字体 | 精度像素 | 中文字体
模板下载 >> 企业门户 | 数码网络 | 休闲娱乐 | 影视音乐 | 旅游名胜 | 文化艺术 | 电子商务 | 个性展示 | 登陆导航 | Flash模板
►►您当前的位置:源码园 → IT学院 → 网络媒体 → FLASH → 文章内容

FLASH MX2004体验二:定制组件外观

作者:佚名  来源:不详  发布时间:2007-2-7 23:28:33
 

FlashMX2004自带的组件比MX漂亮了很多, 但有时候为了让组件的外观和整个页面的样式相统一, 必须重新改变组件的外观, 比如组件标签的字体和颜色, 组件的背景颜色等等. 这个FlashMX自身是做不到的.

 

       改变组件外观有三种方法: Use the Styles API(使用样式API), Apply a theme(应用一个主题名), 和Modify or replace a component's skins(修改或替换组皮肤). 这里着重说明第一种方法, Use the Styles API(application programming interface). 我们可以利用Styles API 提供的属性和方法( setStyle()和getStyle())来改变组件的颜色和文本格式.

       其中使用Styles又有四种方法:

      1.Set styles on a component instance. (对一个组件实例设置样式)
      2.Use the _global style declaration that sets styles for all components in a document.(使用全局样式声明对文档的所有组件设置样式)
      3.Create custom style declarations and apply them to specific component instances.(创建自定义样式声明并应用到指定的组件实例)
      4.Create default class style declarations.(为组件类别创建样式声明)
     
      下面对每一种方法进行详解.

      
      Set styles on a component instance (对一个组件实例设置样式).

       从components面板拖个Button 组件到场景(也可以用其它组件),并命名为”myBtn”:

       快捷键”F9”打开Action面板,在时间线上写Action:

myBtn.setStyle("themeColor", "0x00CCFF");
myBtn.setStyle("fontFamily", "Verdana");
myBtn.setStyle("fontSize", "10");
myBtn.setStyle("fontWeight", "bold");
myBtn.setStyle("color", "0x990000");

       Ctrl+Enter 预览效果,组件样式是不是改变了?下面是默认的样式和刚才自定义样式的效果对比图:

      Use the _global style declaration that sets styles for all components in a document.(使用全局样式声明对文档的所有组件设置样式)
        

       FlashMX2004的_global对象的Style属性可以做到这一点:  从components面板拖n 个组件到场景,这里我用的是Button,CheckBox和RadioButton 三个组件,也不要给组件命名,直接在时间线上写Action:
        
  

_global.style.setStyle("themeColor", "0x00CCFF");
_global.style.setStyle("fontFamily", "Verdana");
_global.style.setStyle("fontSize", "10");
_global.style.setStyle("fontWeight", "bold");
_global.style.setStyle("color", "0x990000");

      Ctrl+Enter 预览效果.下面是这三个组件的前后效果对比图:

       这种方法使得场景里的所有组件的外观保持一致.

      Create custom style declarations and apply them to specific component instances.(创建自定义样式声明并应用到指定的组件实例)

       当我们把组件拖到场景里便可以利用CSSStyleDeclaration 对象创建一个样式声明来改变指定组件的外观。还是从components面板拖Button,CheckBox和RadioButton三个组件到场景并分别命名为CompA, CompB, CompC. 在时间线上写Action:

//创建一个CSSStyleDeclaration对象实例
var styleObj = new mx.styles.CSSStyleDeclaration;
//设置styleName属性
styleObj.styleName = "newStyle";
//将样式放到全局样式列表
_global.styles.newStyle = styleObj;
//设置样式属性
styleObj.fontFamily = "Verdana";
styleObj.fontSize = "10";
styleObj.fontWeight = "bold";
styleObj.color = "0x990000";
styleObj.setStyle("themeColor", "0x00CCFF");
//对组件设置样式
CompA.setStyle("styleName", "newStyle");
CompB.setStyle("styleName", "newStyle");
CompC.setStyle("styleName", "newStyle");

      下图为三个组件应用样式后的效果:

      Create default class style declarations.(为组件类别创建样式声明)

       这种方法为场景内某一类型的组件定义样式,只对此类别有效。先写Action:

//为Button类型的组件定义样式
var btn = _global.styles.Button=new mx.styles.CSSStyleDeclaration();
btn.fontFamily = "Verdana";
btn.fontSize = "12";
btn.fontWeight = "bold";
btn.color = "0x000000";
//为CheckBox类型的组件定义样式
var cb = _global.styles.CheckBox=new mx.styles.CSSStyleDeclaration();
cb.fontFamily = "Tahoma";
cb.fontSize = "12";
cb.fontWeight = "bold";
cb.color = "0x990000";
//为RadioButton类型的组件定义样式
var rb = _global.styles.RadioButton=new mx.styles.CSSStyleDeclaration();
rb.fontFamily = "Arial";
rb.fontSize = "12";
rb.fontWeight = "bold";
rb.color = "0x003399";


      然后分别拖3个(个数根据需要而定)Button组件,CheckBox组件,RadioButton组件到场景。
预览效果如下图:

 

      用Styles API 定义组件外观的四种方法介绍完了,呵呵,是不是很象用CSS定义HTML表单对象的样式?

     [注:以上例子只对Flash V2 Component有效]

      通过学习用CSS格式化Flash文本和用样式声明改变组件外观,大家可能感觉到MM正在用Flash打造一个和HTML一样的平台,呵呵,拭目以待~!

 
[] [返回上一页] [打 印]
  • 上一篇文章:FLASH MX2004体验一:在用CSS格式化Flash文本
  • 下一篇文章:教你如何真正保护好自己的电脑

  • 相关文章:
  • Flash中if条件语句的用法
  • [组图]教你利用Flash制作梦幻仙境效果
  • [组图]用Flash制作简单光晕效果的
  • flash菜单与asp.net进行交互
  • Delphi让你发送Flash电子邮件(2)
  • Delphi让你发送Flash电子邮件(1)
  • Delphi让你发送Flash电子邮件
  • Delphi的两个实用技巧(1)播放Flash
  • 类似于FlashGet的悬浮框的制作
  • 让Word也来播放Flash动画
  • [图文]把Word文件转换成Flash
  • 基于S3C4510B的系统的Flash擦除与烧写问题(一)
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 源码发布
Copyright © 2003-2009 Ymyasp.Com. All Rights Reserved .
备案序号:粤ICP备07029071号