麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 辦公 > Flash > 正文

Flash加載外部文件創建進度條3種方法

2020-07-17 13:17:22
字體:
來源:轉載
供稿:網友
加載外部文件的進度條(看幫助文檔整理),只適合那些不愿看幫助文檔的新手。我只不過加了一些注釋。
為加載圖像文件或 SWF 文件創建進度條
創建一個名為 loadImage.fla 的新 Flash 文檔。
選擇"修改">"文檔",在寬度文本框中鍵入 700,在高度文本框中鍵入 500,從而更改文檔的尺寸。
在時間軸中選擇第 1 幀,然后在"動作"面板中鍵入下面的代碼: // 創建剪輯來承載您的內容
this.createEmptyMovieClip("progressBar_mc", 0);
progressBar_mc.createEmptyMovieClip("bar_mc", 1);
progressBar_mc.createEmptyMovieClip("stroke_mc", 2);
// 創建進度框
with (progressBar_mc.stroke_mc) {
lineStyle(0, 0x000000);
moveTo(0, 0);
lineTo(100, 0);
lineTo(100, 10);
lineTo(0, 10);
lineTo(0, 0);
}
//創建進度條
with (progressBar_mc.bar_mc) {
beginFill(0xFF0000, 100);
moveTo(0, 0);
lineTo(100, 0);
lineTo(100, 10);
lineTo(0, 10);
lineTo(0, 0);
endFill();
_xscale = 0;
}
//進度坐標
progressBar_mc._x = 2;
progressBar_mc._y = 2;
//加載進度
var mclListener:Object = new Object();
//開始加載時進度條縮放為0
mclListener.onLoadStart = function(target_mc:MovieClip) {
progressBar_mc.bar_mc._xscale = 0;
};
//在加載過程中進度條進行縮放
mclListener.onLoadProgress = function(target_mc:MovieClip, bytesLoaded:Number, bytesTotal:Number) {
progressBar_mc.bar_mc._xscale = Math.round(bytesLoaded/bytesTotal*100);
};
//加載完成后進度移除
mclListener.onLoadComplete = function(target_mc:MovieClip) {
progressBar_mc.removeMovieClip();
};
//當執行加載的剪輯的第一幀上的動作時調用(這里設置加載的外部文件的寬高設置)
mclListener.onLoadInit = function(target_mc:MovieClip) {
target_mc._height = 500;
target_mc._width = 700;
};
// 創建一個剪輯來承載圖像。
this.createEmptyMovieClip("image_mc", 100);
var image_mcl:MovieClipLoader = new MovieClipLoader();
image_mcl.addListener(mclListener);
image_mcl.loadClip("http://www.helpexamples.com/flash/images/gallery1/images/pic3.jpg", image_mc);
為加載 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 "%";
}
為加載視頻創建進度條
創建一個名為 flvProgress.fla 的新 FLA 文件。
在"庫"面板("窗口">"庫")中,從"庫"彈出菜單中選擇"新建視頻"。
在"視頻屬性"對話框中,為視頻元件命名并選擇"視頻"(由 Actionscript 控制)。
單擊"確定",創建一個視頻對象。
將該視頻對象從"庫"面板拖動到舞臺上,以創建視頻對象實例。
使視頻對象在舞臺上保持選中狀態,在屬性檢查器("窗口">"屬性">"屬性")中的"實例名稱"文本框中鍵入 my_video。
使視頻實例保持選中狀態,在寬度文本框中鍵入 320,在高度文本框中鍵入 213。
在時間軸中選擇第 1 幀,然后在"動作"面板中鍵入下面的代碼:
//創建 NetConnection 對象,您可以將該對象與 NetStream 對象一起使用來播放視頻流 (FLV) 文件
var connection_nc:NetConnection = new NetConnection();
對于此參數,必須傳遞 null
connection_nc.connect(null);
創建可用于通過指定的 NetConnection 對象播放 FLV 文件的流
var stream_ns:NetStream = new NetStream(connection_nc);
//指定將在舞臺上的 Video 對象的邊界內顯示的視頻流
my_video.attachVideo(stream_ns);
//播放外部視頻 (FLV) 文件
stream_ns.play("http://www.helpexamples.com/flash/video/typing_short.flv");
//創建動態文本(顯示進度)
this.createTextField("loaded_txt", this.getNextHighestDepth(), 10, 10, 160, 22);
//創建進度影片剪輯
this.createEmptyMovieClip("progressBar_mc", this.getNextHighestDepth());
//在進度影片剪輯中創建進度條
progressBar_mc.createEmptyMovieClip("bar_mc", progressBar_mc.getNextHighestDepth());
//畫進度條
with (progressBar_mc.bar_mc) {
beginFill(0xFF0000);
moveTo(0, 0);
lineTo(100, 0);
lineTo(100, 10);
lineTo(0, 10);
lineTo(0, 0);
endFill();
_xscale = 0;
}
//在進度影片剪輯中創建進度框
progressBar_mc.createEmptyMovieClip("stroke_mc", progressBar_mc.getNextHighestDepth());
//畫進度框
with (progressBar_mc.stroke_mc) {
lineStyle(0, 0x000000);
moveTo(0, 0);
lineTo(100, 0);
lineTo(100, 10);
lineTo(0, 10);
lineTo(0, 0);
}
//每隔一定時間就調用下面的checkBytesLoaded函數
var loaded_interval:Number = setInterval(checkBytesLoaded, 500, stream_ns);
function checkBytesLoaded(my_ns:NetStream) {
//進度值設置
var pctLoaded:Number = Math.round(my_ns.bytesLoaded / my_ns.bytesTotal * 100);
//動態文本顯示進度
loaded_txt.text = Math.round(my_ns.bytesLoaded / 1000) " of " Math.round(my_ns.bytesTotal / 1000) " KB loaded (" pctLoaded "%)";
//進度條進行縮放
progressBar_mc.bar_mc._xscale = pctLoaded;
//加載完成后清除間隔
if (pctLoaded>=100) {
clearInterval(loaded_interval);
}
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 免费高清一级欧美片在线观看 | 亚洲午夜1000理论片aa | 国产亚洲精品久久久久久网站 | 黄色片在线免费播放 | 九色中文字幕 | 日韩精品中文字幕一区二区三区 | 久久精品一区二区三区不卡牛牛 | 深夜免费观看视频 | www国产成人免费观看视频,深夜成人网 | www.99tv| 青青草成人免费视频在线 | 午夜国产福利 | 亚洲午夜在线视频 | 日本中文字幕久久 | 久久精品一区二区三区不卡牛牛 | 精品无吗乱吗av国产爱色 | 72pao成人国产永久免费视频 | 欧美不卡三区 | 精品亚洲va在线va天堂资源站 | 欧美一级特黄特色大片免费 | 成人福利免费在线观看 | 国产欧美一区二区三区免费看 | 一级在线观看 | 精品久久久久久久久久久久 | 久久久成人免费视频 | 国产精品视频导航 | 黄色电影免费提供 | 少妇淫片免费一级毛片 | 欧美第1页| 成人午夜亚洲 | 免费高潮在线国 | 久久中文字幕在线观看 | 免费看污视频在线观看 | 国产一区视频观看 | 日本免费aaa观看 | 久久免费视频3 | 无遮挡一级毛片视频 | 红杏亚洲影院一区二区三区 | 久久久久久久久国产 | 双性精h调教灌尿打屁股的文案 | 韩毛片|