• 风格:
网站首页
新闻资讯
文章中心
影视录音
歌曲音乐
精美图片
资源下载
在线商城
网页特效
用户信息
综合导航
  • 流行第一线
  • 流行第一线
  • 站内新闻
  • 临沂新闻
  • 新浪新闻
  • 站内风彩
  • 美女帅哥
  • 桌面图片
  • 节目录音
  • 影片采集
  • 精彩推荐
  • 国语歌曲
  • 网络歌曲
  • 情感故事
  • 忘忧秀豆
  • 娱乐幽默
  • 技术文章
  • 流行第一线
  • 流行第一线
  • 留言本站
  • 博客日志
  • 会员娱乐
  • 动漫频道
  • 酷站推荐
  • 友情连接
  • 程序讨论
您的位置:首页 >> 文章频道 >> 巧用Bitmap类制作按钮---流行第一线
文章阅读

巧用Bitmap类制作按钮---流行第一线

作者:佚名 | 来源:流行第一线 | 时间:2008-04-21 | 阅读权限:游客身份 | 会员币:0

最近在制作flash时需要制作一个可以随意设定宽度的按钮组件.为了保证按钮样式不变形,一般都会采用将按钮分成几个mc的方法来制作.但其实,如果对按钮的动态效果要求不多的话,完全可以使用Bitmap类来制作.下面是将按钮的一个状态分解开来.一般的思路是做为三个MC,然后在改变宽度是,动态改变中间mc的宽度就可以了。但是这样的话,对于元素的制作就比较麻烦.使用bitmap类可以直接将一张图片分为三个MC后生成.在批量使用时,效率提高了不少.

方法:

/**
* date : 2007.2.6
* author : Frank
* site : http://www.2solo.net/log
*/
import flash.display.*;
import flash.geom.Rectangle;
import flash.geom.Point;
install_img("mT_over_bmp", 200, 158, 5, bmp_mc);
function install_img(image_url, center_width, face_width, bar_left, tar_mc) {
//image_url:目标图片路径
//center_width:整体宽度
//face_width:初始位图宽度
//bar_left:边侧mc宽度
//tar_mc:所要加载的容器地址
///定义原始
var linkageId:String = image_url;
var myBD:BitmapData = BitmapData.loadBitmap(linkageId);
if (tar_mc == undefined || tar_mc == "") {
tar_mc = this;
}
//bmp_mc.attachBitmap(myBD, this.getNextHighestDepth());
face_width = face_width-2*bar_left;
///新建MC
tar_mc.center_mc.removeMovieClip();
tar_mc.left_mc.removeMovieClip();
tar_mc.right_mc.removeMovieClip();
var center_mc:MovieClip = tar_mc.createEmptyMovieClip("center_mc", tar_mc.getNextHighestDepth());
var left_mc:MovieClip = tar_mc.createEmptyMovieClip("left_mc", tar_mc.getNextHighestDepth());
var right_mc:MovieClip = tar_mc.createEmptyMovieClip("right_mc", tar_mc.getNextHighestDepth());
center_mc._x = bar_left;
left_mc._x = 0;
right_mc._x = center_width-bar_left;
///新建图片数据
var myBD_C:BitmapData = new BitmapData(face_width, myBD.height, true, 0x00FF0000);
var myBD_L:BitmapData = new BitmapData(bar_left, myBD.height, true, 0x00FF0000);
var myBD_R:BitmapData = new BitmapData(bar_left, myBD.height, true, 0x00FF0000);
///拷贝图片
myBD_C.copyPixels(myBD, new Rectangle(bar_left, 0, face_width, myBD.height), new Point(0, 0));
myBD_L.copyPixels(myBD, new Rectangle(0, 0, bar_left, myBD.height), new Point(0, 0));
myBD_R.copyPixels(myBD, new Rectangle(myBD.width-bar_left, 0, bar_left, myBD.height), new Point(0, 0));
//加载图片
center_mc.attachBitmap(myBD_C, this.getNextHighestDepth());
left_mc.attachBitmap(myBD_L, this.getNextHighestDepth());
right_mc.attachBitmap(myBD_R, this.getNextHighestDepth());
///调整距离
center_mc._width = center_width-2*bar_left;
}
stop();

提交会员:admin采集 | 浏览次数:
【 复制 】 【 打印 】

>>相关资讯:

上篇文章:Flash 8制作烟花粒子的特效代码---流行第一线   下篇文章:Flash文件的加密与破解技术详细解析---流行第一线
查看网友评论 网友评论
以下网友评论只代表其个人观点,不代表悠久网的观点或立场
用户登陆

加载中……
相关文章
  • 没有相关文章
关于我们 | 广告合作 | 免责申明 | 程序帮助 | 网站地图 | 留言本站 | 友情连接 | 后台管理
Copyright © 2008 - 2009 HxCms.Net www.am873.com Inc. All Rights Reserved.
HxCms Ver8.0  鲁ICP备07004488号