最近失业在家,不是很爽啊~
随便写些代码,想到什么,写什么
暂时打算写一个完整的FLV播放器,其中按照代码来说,需要三大部分
一:xml数据读取
二:List元件
三:FLV播放器
现在把FLV播放器80%写完了,才300行。
代码如下:
//
======================================================
// ===================code design By LongFeng=======================
// ======================================================
var movieWidth:uint = 640 ;
var movieHeight:uint = 480 ;
var movieURL:String = " test.flv " ;
var titleTxt:String = " 测试 " ;
var progresX:Number = controlBar.scrubber.progres.x;
var theVideo:Video = getChildByName( " _theVideo " ) as Video;
var tooltip:MovieClip = getChildByName( " _tooltip " ) as MovieClip;
// 影片流
var ns:NetStream;
// 自动播放
var movieTotalTime = 0 ;
var isStartAuto:Boolean = false ;
var isStarted:Boolean = false ;
var isSlide:Boolean = false ;
var isNeedCheck:Boolean = false ;
var testLoadNum:uint = 0 ;
var loadInfo:uint = 0 ;
var volX:Number = controlBar.vol.x;
var volY:Number = controlBar.vol.y;
var movieProgressX:Number = controlBar.scrubber.progres.x;
var movieProgressY:Number = controlBar.scrubber.progres.y;
var movieProgressW:Number = 280 - movieProgressX;
var nc:NetConnection = new NetConnection();
// 音量宽度
const volWidth: int = 58 ;
var volNum:Number = 0.8 ;
var flvTitle:String;
// 一系列的按钮提述侦听器
controlBar.rewinder.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
controlBar.pauseBtn.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
controlBar.playBtn.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
controlBar.fforwarder.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
controlBar.stopBtn.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
controlBar.scrubber.progres.scrubba.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
controlBar.vol.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
plBut.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
//
// 函数段
// 播放影片 主函数
function playMovieInit(_movieURL:String = " test.flv " ,title:String = " 测试 " ,auto:Boolean = false ) ... {
flvTitle = title;
movieURL = _movieURL;
init();
isStartAuto = auto
trace(isStartAuto);
if(isStartAuto)...{
setStream();
}
}
function setStream() ... {
nc.addEventListener(NetStatusEvent.NET_STATUS,netStatusHandler);
nc.connect(null);
}
function netStatusHandler(event:NetStatusEvent) ... {
trace(event.info.code);
switch (event.info.code)...{
case "NetStream.Seek.Notify":
if(isNeedCheck)...{
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,movieProgress);
}
break;
case "NetConnection.Connect.Success" :
connectStream();
break;
/**//*
case "NetStream.Buffer.Full":
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,movieProgress);
break;
*/
//搜寻操作开始
case "NetStream.Play.Start":
isNeedCheck = true;
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,movieProgress);
break;
case "NetStream.Unpause.Notify":
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,movieProgress);
break;
case "NetStream.Play.StreamNotFound" :
trace("未找到影片:" + movieURL);
break;
/**//*case "NetStream.Seek.Notify":
if(isNeedCheck){
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,movieProgress);
}
break;*/
//暂停
case "NetStream.Pause.Notify":
// controlBar.scrubber.removeEventListener(Event.ENTER_FRAME,movieProgress);
trace("fuck");
controlBar.scrubber.progres.removeEventListener(Event.ENTER_FRAME,movieProgress);
break;
//停止
case "NetStream.Play.Stop" :
isNeedCheck = false;
controlBar.scrubber.progres.x = movieProgressX;
controlBar.scrubber.progres.removeEventListener(Event.ENTER_FRAME,movieProgress);
ns.seek(0);
pauseMovie();
break;
}
}
function connectStream() ... {
ns = new NetStream(nc);
ns.addEventListener(NetStatusEvent.NET_STATUS,netStatusHandler);
var customClient:Object = new Object();
//从网络流中获取时间元素
customClient.onMetaData = function(info:Object)...{
//trace("metadata: duration=" + info.duration + " width=" + info.width + " height=" + info.height + " framerate=" + info.framerate);
movieTotalTime = info.duration;
};
//从网络流中获取状态信息
/**//*customClient.onStatus = function(info:Object){
// trace("cuepoint: time=" + info.time + " name=" + info.name + " type=" + info.type);
//trace(info.code)
};*/
ns.client = customClient;
theVideo.attachNetStream(ns);
playMovie();
//
//
//
//
//
}
function playMovie() ... {
if(!isStarted)...{
ns.play(movieURL);
welcome.infoTxt.text = "loading..";
isStarted = true;
setMovieSound(volNum);
controlBar.vol.x = volNum * volWidth + volX;
setAble();
//
//
//按钮初始化
//声音滑块设置
controlBar.vol.addEventListener(MouseEvent.MOUSE_DOWN,setMoveVolBar);
//声音设置完毕
//播放系列设置
controlBar.playBtn.addEventListener(MouseEvent.MOUSE_DOWN,playMovieBtn);
controlBar.pauseBtn.addEventListener(MouseEvent.MOUSE_DOWN,pauseMovieBtn);
controlBar.stopBtn.addEventListener(MouseEvent.MOUSE_DOWN,stopMovieBtn);
//
//播放进程
controlBar.scrubber.loaded.addEventListener(Event.ENTER_FRAME,movieInFrame);
controlBar.scrubber.progres.scrubba.addEventListener(MouseEvent.MOUSE_DOWN,setMovieProgress);
//
//
//
}else...{
ns.resume();
}
controlBar.pauseBtn.visible = false;
controlBar.playBtn.visible = true;
}
function setMoveVolBar(evt:MouseEvent) ... {
//evt.target.startDrag(false, startxs+3, evt.target._y, startxs+58, evt.target._y);
evt.target.startDrag(false,new Rectangle(volX,volY,volWidth,0));
evt.target.addEventListener(Event.ENTER_FRAME,checkVol);
stage.addEventListener(MouseEvent.MOUSE_UP,setLeaveVolBar);
}
// 检查音量 与VOL元件绑定
function checkVol(evt:Event) ... {
trace("音量检测");
var tempVol:Number = Math.ceil((evt.target.x - volX)/volWidth*100)/100;
setMovieSound(tempVol);
}
function setLeaveVolBar(evt:MouseEvent) ... {
controlBar.vol.stopDrag();
controlBar.vol.removeEventListener(Event.ENTER_FRAME,checkVol);
stage.removeEventListener(MouseEvent.MOUSE_UP,setLeaveVolBar);
}
// 播放,暂停,停止按钮事件函数
// ------------------------------------------------------------------------------------------------------
//
function playMovieBtn(evt:MouseEvent) ... {
controlBar.scrubber.progres.removeEventListener(Event.ENTER_FRAME,movieProgress);
ns.pause();
controlBar.pauseBtn.visible = true;
controlBar.playBtn.visible = false;
}
function pauseMovieBtn(evt:MouseEvent) ... {
//tooltip.visible = true;
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,movieProgress);
playMovie();
}
function stopMovieBtn(evt:MouseEvent) ... {
controlBar.scrubber.progres.removeEventListener(Event.ENTER_FRAME,movieProgress);
ns.seek(0);
pauseMovie();
}
// --------------------------------------------------------------------------------------------------------
function movieInFrame(evt:Event) ... {
trace("下载进度检测" + testLoadNum);
testLoadNum++;
if(testLoadNum < 50)...{
var loaded :uint = ns.bytesLoaded;
var total :uint = ns.bytesTotal;
loadInfo = int(loaded/total);
if (loaded == total && loaded > 1000) ...{
controlBar.scrubber.perload.text = "Load Over";
evt.target.removeEventListener(Event.ENTER_FRAME,movieInFrame);
}else...{
evt.target.scaleX = int (loaded/total);
controlBar.scrubber.perload.text = int (loaded/total)+"%";
//progressBar.loa.scaleX = int (loaded/total);
}
}else...{
controlBar.scrubber.perload.text = "Load Fail";
evt.target.removeEventListener(Event.ENTER_FRAME,movieInFrame);
}
}
function movieProgress(evt:Event) ... {
//trace("影片播放检测");
//var tempProgress:Number = Math.ceil((controlBar.scrubber.progres.x - movieProgressX)/(-26+286)*100)/100;
var tempProgress:Number ;
if(movieTotalTime != 0)...{
title.text = String(ns.time);
tempProgress = Math.ceil(ns.time/movieTotalTime*100)/100;
title.text = String(tempProgress);
controlBar.scrubber.progres.x = tempProgress*movieProgressW + movieProgressX;
}
}
function setMovieSound(soundVol:Number) ... {
var transform:SoundTransform = new SoundTransform(soundVol);
ns.soundTransform = transform;
}
// ----------------------------------------------------------------------------------------
// 初始化主要属性
function init() ... {
testLoadNum = 0;
movieTotalTime = 0;
isStarted = false;
isSlide = false;
welcome.visible = false;
controlBar.playBtn.visible = false;
controlBar.pauseBtn.visible = true;
controlBar.scrubber.progres.x = progresX;
controlBar.scrubber.perload.text = "0%";
bugle.stopBar.visible = false;
controlBar.vol.x = volX;
isNeedCheck = false;
setEnable();
title.text = flvTitle;
tooltip.visible = false;
loadInfo = 0;
}
// ----------------------------------------------------------------------------------------------------
function setEnable() ... {
bugle.mute.enabled = false;
controlBar.scrubber.progres.scrubba.enabled = false;
for(var i:uint =controlBar.numChildren-1; i<controlBar.numChildren;i--)...{
var child = controlBar.getChildAt(i);
child.enabled = false;
}
}
function setAble() ... {
bugle.mute.enabled = true;
controlBar.scrubber.progres.scrubba.enabled =true;
for(var i:uint =controlBar.numChildren-1; i<controlBar.numChildren;i--)...{
var child = controlBar.getChildAt(i);
child.enabled = true;
}
}
function setWidth(_movieWidth:uint) ... {
}
function setHeight(_movieHeight:uint) ... {
}
// 函数段结束
// 影片控制
// 按钮事件
function progressMove(evt:Event) ... {
//controlBar.scrubber.progres.x = controlBar.scrubber.mouseX;
}
function lostMovieProgress(evt:MouseEvent) ... {
if(isSlide)...{
var tempProgress:Number = (controlBar.scrubber.progres.x - movieProgressX)/movieProgressW;
ns.seek(tempProgress * movieTotalTime);
controlBar.scrubber.progres.removeEventListener(Event.ENTER_FRAME,moveBar);
stage.removeEventListener(MouseEvent.MOUSE_UP,lostMovieProgress);
isSlide = false;
}
}
function setMovieProgress(evt:Event) ... {
controlBar.scrubber.progres.removeEventListener(Event.ENTER_FRAME,movieProgress);
//
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,moveBar);
//controlBar.scrubber.progres.scrubba.addEventListener(MouseEvent.MOUSE_UP,lostMovieProgress);
stage.addEventListener(MouseEvent.MOUSE_UP,lostMovieProgress);
}
function moveBar(evt:Event) ... {
//trace("滑动检测");
isSlide = true;
if(controlBar.scrubber.mouseX <= 276 && controlBar.scrubber.mouseX >= 17)...{
controlBar.scrubber.progres.x = controlBar.scrubber.mouseX;
}else if(controlBar.scrubber.mouseX>276)...{
controlBar.scrubber.progres.x = 276;
}else if(controlBar.scrubber.mouseX < 17)...{
controlBar.scrubber.progres.x = 17;
}
}
//
function pauseMovie() ... {
ns.pause();
controlBar.pauseBtn.visible = true;
controlBar.playBtn.visible = false;
}
//
function tipsShow(evt:MouseEvent) ... {
trace(evt.target.name);
tooltip.x = evt.target.x;
tooltip.y = evt.target.y;
tooltip.visible = true;
tooltip.setTips(evt.target.name);
tooltip.startDrag(true);
evt.target.addEventListener(MouseEvent.ROLL_OUT,tipsHide);
}
function tipsHide(evt:MouseEvent) ... {
tooltip.stopDrag();
tooltip.visible = false;
evt.target.removeEventListener(MouseEvent.ROLL_OUT,tipsHide);
}
playMovieInit( " video2.flv " , " 美女 " , true );
// 未下载完成,controlBar.scrubber.loaded.addEventListener(Event.ENTER_FRAME,movieInFrame);会继续触发
// 建立新链接的时候才需移除的侦听器 ns.addEventListener(NetStatusEvent.NET_STATUS,netStatusHandler);
// ===================code design By LongFeng=======================
// ======================================================
var movieWidth:uint = 640 ;
var movieHeight:uint = 480 ;
var movieURL:String = " test.flv " ;
var titleTxt:String = " 测试 " ;
var progresX:Number = controlBar.scrubber.progres.x;
var theVideo:Video = getChildByName( " _theVideo " ) as Video;
var tooltip:MovieClip = getChildByName( " _tooltip " ) as MovieClip;
// 影片流
var ns:NetStream;
// 自动播放
var movieTotalTime = 0 ;
var isStartAuto:Boolean = false ;
var isStarted:Boolean = false ;
var isSlide:Boolean = false ;
var isNeedCheck:Boolean = false ;
var testLoadNum:uint = 0 ;
var loadInfo:uint = 0 ;
var volX:Number = controlBar.vol.x;
var volY:Number = controlBar.vol.y;
var movieProgressX:Number = controlBar.scrubber.progres.x;
var movieProgressY:Number = controlBar.scrubber.progres.y;
var movieProgressW:Number = 280 - movieProgressX;
var nc:NetConnection = new NetConnection();
// 音量宽度
const volWidth: int = 58 ;
var volNum:Number = 0.8 ;
var flvTitle:String;
// 一系列的按钮提述侦听器
controlBar.rewinder.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
controlBar.pauseBtn.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
controlBar.playBtn.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
controlBar.fforwarder.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
controlBar.stopBtn.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
controlBar.scrubber.progres.scrubba.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
controlBar.vol.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
plBut.addEventListener(MouseEvent.ROLL_OVER,tipsShow);
//
// 函数段
// 播放影片 主函数
function playMovieInit(_movieURL:String = " test.flv " ,title:String = " 测试 " ,auto:Boolean = false ) ... {
flvTitle = title;
movieURL = _movieURL;
init();
isStartAuto = auto
trace(isStartAuto);
if(isStartAuto)...{
setStream();
}
}
function setStream() ... {
nc.addEventListener(NetStatusEvent.NET_STATUS,netStatusHandler);
nc.connect(null);
}
function netStatusHandler(event:NetStatusEvent) ... {
trace(event.info.code);
switch (event.info.code)...{
case "NetStream.Seek.Notify":
if(isNeedCheck)...{
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,movieProgress);
}
break;
case "NetConnection.Connect.Success" :
connectStream();
break;
/**//*
case "NetStream.Buffer.Full":
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,movieProgress);
break;
*/
//搜寻操作开始
case "NetStream.Play.Start":
isNeedCheck = true;
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,movieProgress);
break;
case "NetStream.Unpause.Notify":
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,movieProgress);
break;
case "NetStream.Play.StreamNotFound" :
trace("未找到影片:" + movieURL);
break;
/**//*case "NetStream.Seek.Notify":
if(isNeedCheck){
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,movieProgress);
}
break;*/
//暂停
case "NetStream.Pause.Notify":
// controlBar.scrubber.removeEventListener(Event.ENTER_FRAME,movieProgress);
trace("fuck");
controlBar.scrubber.progres.removeEventListener(Event.ENTER_FRAME,movieProgress);
break;
//停止
case "NetStream.Play.Stop" :
isNeedCheck = false;
controlBar.scrubber.progres.x = movieProgressX;
controlBar.scrubber.progres.removeEventListener(Event.ENTER_FRAME,movieProgress);
ns.seek(0);
pauseMovie();
break;
}
}
function connectStream() ... {
ns = new NetStream(nc);
ns.addEventListener(NetStatusEvent.NET_STATUS,netStatusHandler);
var customClient:Object = new Object();
//从网络流中获取时间元素
customClient.onMetaData = function(info:Object)...{
//trace("metadata: duration=" + info.duration + " width=" + info.width + " height=" + info.height + " framerate=" + info.framerate);
movieTotalTime = info.duration;
};
//从网络流中获取状态信息
/**//*customClient.onStatus = function(info:Object){
// trace("cuepoint: time=" + info.time + " name=" + info.name + " type=" + info.type);
//trace(info.code)
};*/
ns.client = customClient;
theVideo.attachNetStream(ns);
playMovie();
//
//
//
//
//
}
function playMovie() ... {
if(!isStarted)...{
ns.play(movieURL);
welcome.infoTxt.text = "loading..";
isStarted = true;
setMovieSound(volNum);
controlBar.vol.x = volNum * volWidth + volX;
setAble();
//
//
//按钮初始化
//声音滑块设置
controlBar.vol.addEventListener(MouseEvent.MOUSE_DOWN,setMoveVolBar);
//声音设置完毕
//播放系列设置
controlBar.playBtn.addEventListener(MouseEvent.MOUSE_DOWN,playMovieBtn);
controlBar.pauseBtn.addEventListener(MouseEvent.MOUSE_DOWN,pauseMovieBtn);
controlBar.stopBtn.addEventListener(MouseEvent.MOUSE_DOWN,stopMovieBtn);
//
//播放进程
controlBar.scrubber.loaded.addEventListener(Event.ENTER_FRAME,movieInFrame);
controlBar.scrubber.progres.scrubba.addEventListener(MouseEvent.MOUSE_DOWN,setMovieProgress);
//
//
//
}else...{
ns.resume();
}
controlBar.pauseBtn.visible = false;
controlBar.playBtn.visible = true;
}
function setMoveVolBar(evt:MouseEvent) ... {
//evt.target.startDrag(false, startxs+3, evt.target._y, startxs+58, evt.target._y);
evt.target.startDrag(false,new Rectangle(volX,volY,volWidth,0));
evt.target.addEventListener(Event.ENTER_FRAME,checkVol);
stage.addEventListener(MouseEvent.MOUSE_UP,setLeaveVolBar);
}
// 检查音量 与VOL元件绑定
function checkVol(evt:Event) ... {
trace("音量检测");
var tempVol:Number = Math.ceil((evt.target.x - volX)/volWidth*100)/100;
setMovieSound(tempVol);
}
function setLeaveVolBar(evt:MouseEvent) ... {
controlBar.vol.stopDrag();
controlBar.vol.removeEventListener(Event.ENTER_FRAME,checkVol);
stage.removeEventListener(MouseEvent.MOUSE_UP,setLeaveVolBar);
}
// 播放,暂停,停止按钮事件函数
// ------------------------------------------------------------------------------------------------------
//
function playMovieBtn(evt:MouseEvent) ... {
controlBar.scrubber.progres.removeEventListener(Event.ENTER_FRAME,movieProgress);
ns.pause();
controlBar.pauseBtn.visible = true;
controlBar.playBtn.visible = false;
}
function pauseMovieBtn(evt:MouseEvent) ... {
//tooltip.visible = true;
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,movieProgress);
playMovie();
}
function stopMovieBtn(evt:MouseEvent) ... {
controlBar.scrubber.progres.removeEventListener(Event.ENTER_FRAME,movieProgress);
ns.seek(0);
pauseMovie();
}
// --------------------------------------------------------------------------------------------------------
function movieInFrame(evt:Event) ... {
trace("下载进度检测" + testLoadNum);
testLoadNum++;
if(testLoadNum < 50)...{
var loaded :uint = ns.bytesLoaded;
var total :uint = ns.bytesTotal;
loadInfo = int(loaded/total);
if (loaded == total && loaded > 1000) ...{
controlBar.scrubber.perload.text = "Load Over";
evt.target.removeEventListener(Event.ENTER_FRAME,movieInFrame);
}else...{
evt.target.scaleX = int (loaded/total);
controlBar.scrubber.perload.text = int (loaded/total)+"%";
//progressBar.loa.scaleX = int (loaded/total);
}
}else...{
controlBar.scrubber.perload.text = "Load Fail";
evt.target.removeEventListener(Event.ENTER_FRAME,movieInFrame);
}
}
function movieProgress(evt:Event) ... {
//trace("影片播放检测");
//var tempProgress:Number = Math.ceil((controlBar.scrubber.progres.x - movieProgressX)/(-26+286)*100)/100;
var tempProgress:Number ;
if(movieTotalTime != 0)...{
title.text = String(ns.time);
tempProgress = Math.ceil(ns.time/movieTotalTime*100)/100;
title.text = String(tempProgress);
controlBar.scrubber.progres.x = tempProgress*movieProgressW + movieProgressX;
}
}
function setMovieSound(soundVol:Number) ... {
var transform:SoundTransform = new SoundTransform(soundVol);
ns.soundTransform = transform;
}
// ----------------------------------------------------------------------------------------
// 初始化主要属性
function init() ... {
testLoadNum = 0;
movieTotalTime = 0;
isStarted = false;
isSlide = false;
welcome.visible = false;
controlBar.playBtn.visible = false;
controlBar.pauseBtn.visible = true;
controlBar.scrubber.progres.x = progresX;
controlBar.scrubber.perload.text = "0%";
bugle.stopBar.visible = false;
controlBar.vol.x = volX;
isNeedCheck = false;
setEnable();
title.text = flvTitle;
tooltip.visible = false;
loadInfo = 0;
}
// ----------------------------------------------------------------------------------------------------
function setEnable() ... {
bugle.mute.enabled = false;
controlBar.scrubber.progres.scrubba.enabled = false;
for(var i:uint =controlBar.numChildren-1; i<controlBar.numChildren;i--)...{
var child = controlBar.getChildAt(i);
child.enabled = false;
}
}
function setAble() ... {
bugle.mute.enabled = true;
controlBar.scrubber.progres.scrubba.enabled =true;
for(var i:uint =controlBar.numChildren-1; i<controlBar.numChildren;i--)...{
var child = controlBar.getChildAt(i);
child.enabled = true;
}
}
function setWidth(_movieWidth:uint) ... {
}
function setHeight(_movieHeight:uint) ... {
}
// 函数段结束
// 影片控制
// 按钮事件
function progressMove(evt:Event) ... {
//controlBar.scrubber.progres.x = controlBar.scrubber.mouseX;
}
function lostMovieProgress(evt:MouseEvent) ... {
if(isSlide)...{
var tempProgress:Number = (controlBar.scrubber.progres.x - movieProgressX)/movieProgressW;
ns.seek(tempProgress * movieTotalTime);
controlBar.scrubber.progres.removeEventListener(Event.ENTER_FRAME,moveBar);
stage.removeEventListener(MouseEvent.MOUSE_UP,lostMovieProgress);
isSlide = false;
}
}
function setMovieProgress(evt:Event) ... {
controlBar.scrubber.progres.removeEventListener(Event.ENTER_FRAME,movieProgress);
//
controlBar.scrubber.progres.addEventListener(Event.ENTER_FRAME,moveBar);
//controlBar.scrubber.progres.scrubba.addEventListener(MouseEvent.MOUSE_UP,lostMovieProgress);
stage.addEventListener(MouseEvent.MOUSE_UP,lostMovieProgress);
}
function moveBar(evt:Event) ... {
//trace("滑动检测");
isSlide = true;
if(controlBar.scrubber.mouseX <= 276 && controlBar.scrubber.mouseX >= 17)...{
controlBar.scrubber.progres.x = controlBar.scrubber.mouseX;
}else if(controlBar.scrubber.mouseX>276)...{
controlBar.scrubber.progres.x = 276;
}else if(controlBar.scrubber.mouseX < 17)...{
controlBar.scrubber.progres.x = 17;
}
}
//
function pauseMovie() ... {
ns.pause();
controlBar.pauseBtn.visible = true;
controlBar.playBtn.visible = false;
}
//
function tipsShow(evt:MouseEvent) ... {
trace(evt.target.name);
tooltip.x = evt.target.x;
tooltip.y = evt.target.y;
tooltip.visible = true;
tooltip.setTips(evt.target.name);
tooltip.startDrag(true);
evt.target.addEventListener(MouseEvent.ROLL_OUT,tipsHide);
}
function tipsHide(evt:MouseEvent) ... {
tooltip.stopDrag();
tooltip.visible = false;
evt.target.removeEventListener(MouseEvent.ROLL_OUT,tipsHide);
}
playMovieInit( " video2.flv " , " 美女 " , true );
// 未下载完成,controlBar.scrubber.loaded.addEventListener(Event.ENTER_FRAME,movieInFrame);会继续触发
// 建立新链接的时候才需移除的侦听器 ns.addEventListener(NetStatusEvent.NET_STATUS,netStatusHandler);
有问题请留言,代码写的比较乱。有空我解释下里面的代码