WEB开发网
开发学院图形图像Flash Flash加载外部文件创建进度条3种方法 阅读

Flash加载外部文件创建进度条3种方法

 2008-10-08 11:37:23 来源:WEB开发网   
核心提示: 为加载 MP3 文件创建进度条创建一个名为 loadSound.fla 的新 Flash 文档,在时间轴中选择第 1 帧,Flash加载外部文件创建进度条3种方法(2),然后在"动作"面板中键入下面的代码://设置宽高变量var pb_height:Number = 1

为加载 MP3 文件创建进度条

创建一个名为 loadSound.fla 的新 Flash 文档。

在时间轴中选择第 1 帧,然后在"动作"面板中键入下面的代码:

//设置宽高变量
var pb_height:Number = 10;
var pb_width:Number = 100;
//在影片剪辑pb中创建进度
var pb:MovieClip = this.createEmptyMovieClip("progressBar_mc", this.getNextHighestDepth());
//在影片剪辑pb中创建进度条
pb.createEmptyMovieClip("bar_mc", pb.getNextHighestDepth());
//在影片剪辑pb中创建进度条右边直线
pb.createEmptyMovieClip("vBar_mc", pb.getNextHighestDepth());
//在影片剪辑pb中创建进度框
pb.createEmptyMovieClip("stroke_mc", pb.getNextHighestDepth());
//在影片剪辑pb中创建动态文本
pb.createTextField("pos_txt", pb.getNextHighestDepth(), 0, pb_height, pb_width, 22);
//影片剪辑pb的坐标设置
pb._x = 100;
pb._y = 100;
//画进度条
with (pb.bar_mc) {
  beginFill(0x00FF00);
  moveTo(0, 0);
  lineTo(pb_width, 0);
  lineTo(pb_width, pb_height);
  lineTo(0, pb_height);
  lineTo(0, 0);
  endFill();
  _xscale = 0;
}
//画进度条右边直线
with (pb.vBar_mc) {
  lineStyle(1, 0x000000);
  moveTo(0, 0);
  lineTo(0, pb_height);
}
//画进度框
with (pb.stroke_mc) {
  lineStyle(3, 0x000000);
  moveTo(0, 0);
  lineTo(pb_width, 0);
  lineTo(pb_width, pb_height);
  lineTo(0, pb_height);
  lineTo(0, 0);
}
//设置一些变量
var my_interval:Number;
var my_sound:Sound = new Sound();
//加载声音自动调用
my_sound.onLoad = function(success:Boolean) {
  if (success) {
   trace("sound loaded");
  }
};
//声音播放完毕时调用
my_sound.onSoundComplete = function() {
  clearInterval(my_interval);
  trace("Cleared interval");
}
//加载声音路径
my_sound.loadSound("http://www.helpexamples.com/flash/sound/song2.mp3", true);
//每隔一定时间就调用下面的updateProgressBar函数
my_interval = setInterval(updateProgressBar, 100, my_sound);
function updateProgressBar(the_sound:Sound):Void {
//设置声音进度(声音已播放时间除以声音总时间乘以100)
  var pos:Number = Math.round(the_sound.position / the_sound.duration * 100);
//进度条进行缩放
  pb.bar_mc._xscale = pos;
//进度条右边直线的X坐标等于进度条的宽
  pb.vBar_mc._x = pb.bar_mc._width;
//动态文本显示进度
  pb.pos_txt.text = pos + "%";
}

Tags:Flash 加载 外部

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接