} } } // function showimage(url){ //自定义函数showimage() if(image_mc!=undefined){ //删除前一个image_mc image_mcl.unloadClip(image_mc); } var image_mcl=new MovieClipLoader(); //下面的代码和第一章中的相似,不再解释 var mcllistener=new Object(); var image_mc=this.createEmptyMovieClip("image_mc", this.getNextHighestDepth()); mcllistener.onLoadStart=function(){ loading_mc._visible=true; loading_mc.loading_txt.text="00.00"; } mcllistener.onLoadProgress=function(target, bytesLoaded, bytesTotal){ var loaded=100*bytesLoaded/bytesTotal; loading_mc.loading_txt.text=loaded.toString().slice(0,5); loading_mc.loading_txt._y=50-loaded/2; } mcllistener.onLoadComplete=function(){ loading_mc._visible=false; } mcllistener.onLoadInit = function(target){ target._width=410; target._height=300; target._x=100; target._y=40; } image_mcl.addListener(mcllistener); image_mcl.loadClip(url,image_mc); }
第七章 contact.swf 这是一个功能很少的留言功能,使用Flash+ASP+Access,网上很多功能齐全的Flash留言本,所以我不详细介绍了,只简单说下Flash与ASP通信的问题: Flash向ASP传递变量通过LoadVars类,ASP端通过Request.Form("变量名")或Request.QueryString ("变量名")来接收变量,前者是flash端以post的方式发送,后者是以get方式发送,区别可以找看帮助文档。 比如我的提交留言按钮是ok_btn,则代码如下:
ok_btn.onRelease=function(){ var my_lv=new LoadVars(); my_lv.title=title_mc.input_txt.text; my_lv.name=name_mc.input_txt.text; my_lv.content=word_mc.word_txt.text; my_lv.onLoad=function(success){ gotoAndStop(2); if(success){ if(my_lv.returnword=="ok"){ returnword_txt.text="thank you for your word!"; }else{ returnword_txt.text="sorry, connect database error!"; } }else{ returnword_txt.text="sorry, pages error!"; } } my_lv.sendAndLoad("leaveword.asp",my_lv,"post"); }
Tips:在使用LoadVars类时即使只需send也用sendAndLoad方法。另外很多人在做这方面的东西时,按Ctrl+Enter却看不到效果,很简单,因为asp页面没有被解释执行,所以要在flash中测试的话,需写服务器脚本页面的全称,比如这个就应该写"http://127.0.0.1/leaveword.asp"。
原文件下载地址:http://mail.ustc.edu.cn/~bxl009/web.rar
上一篇:Flash绘制精致矢量图——斑驳的秋天落叶
下一篇:Flash绘画技巧之绘制人物侧面效果图
|