首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Flash >

求改一个程序,该如何解决

2012-04-11 
求改一个程序我有个程序是通过遍历输出按钮元件的,代码如下JScript code// C o p y r i g h t?f l a s h m

求改一个程序
我有个程序是通过遍历输出按钮元件的,代码如下

JScript code
// C o p y r i g h t   ©   f l a s h m o . c o m// D e v e l o p e d   b y   M i n  T h u// Tweener// http://code.google.com/p/tweener/import caurina.transitions.Tweener;// To make a link to an external page, write label as "Label|URL" in array value// EXAMPLE 1: "Flash Templates|http://www.flashmo.com/store"// EXAMPLE 2: "Donate|http://www.flashmo.com/donate"var menu_label:Array = new Array("查看用户", "测试用户", "游戏康复", "关于我们",                                 "Support", "Testimonials", "Company", "Contact" );var total:Number = menu_label.length;var i:Number = 0;var j:Number = 0;var page:Number;var main_menu:MovieClip = new MovieClip();var box_group:MovieClip = new MovieClip();stage.addChild(main_menu);stage.addChild(box_group);fm_button.visible = false;fm_box.visible = false;box_group.visible = false;for( i = 0; i < total; i++ ){    var btn = new flashmo_button();    btn.name = "flashmo_btn" + i;    btn.x = -400;        var each_substring:Array = menu_label[i].split("|");      btn.flashmo_button_label.fm_label.text = each_substring[0];    btn.item_url = each_substring[1];    btn.item_no = i;    btn.flashmo_button_thumbnail.gotoAndStop( i + 1 );        main_menu.addChild(btn);}function btn_over(e:MouseEvent):void{    e.target.parent.over = true;}function btn_out(e:MouseEvent):void{    e.target.parent.over = false;}function btn_click(e:MouseEvent):void{    var mc = e.target.parent;    if( mc.item_url != undefined )        navigateToURL( new URLRequest( mc.item_url ), "_parent" );    else          change_page(mc.item_no);        }function btn_enter(e:Event):void{    var mc = e.target.parent;        if( mc.over == true )        mc.nextFrame();    else        mc.prevFrame();}function change_page(no:Number):void{    page = no + 11;    play();}function credit_link(e:MouseEvent):void{    navigateToURL( new URLRequest( "http://www.flashmo.com" ), "_parent" );}function goto_music(e:MouseEvent):void{    navigateToURL( new URLRequest( "http://www.premiumbeat.com" ), "_blank" );}for( i = 0; i < 13; i++ ){    var box = new flashmo_box();    box.name = "flashmo_box" + i;    box.alpha = 0;    box.x = -500;    box_group.addChild(box);}/*var default_volume:Number = 0.6; // 0.00 to 1.00var bg_music:Sound = new flashmo_music();var music_channel:SoundChannel = bg_music.play(0, 10000);var music_volume:SoundTransform = new SoundTransform();music_volume.volume = default_volume;music_channel.soundTransform = music_volume;sound_control.stop();sound_control.addEventListener( MouseEvent.CLICK, play_pause );function play_pause(e:MouseEvent):void{    music_volume.volume = default_volume;        if( e.target.currentFrame == 1 )        music_volume.volume = 0;            music_channel.soundTransform = music_volume;    e.target.play();}*/




这个类里面是直接有生成8个按钮,分别如上var menu_label:Array = new Array("查看用户", "测试用户", "游戏康复", "关于我们",
"Support", "Testimonials", "Company", "Contact" );

然后在
JScript code
function btn_click(e:MouseEvent):void{    var mc = e.target.parent;    if( mc.item_url != undefined )        navigateToURL( new URLRequest( mc.item_url ), "_parent" );    else          change_page(mc.item_no);        }

打开新对话框,现在我想改成按不同按钮发送fscommand命令,因为我的按钮命名是btn.name = "flashmo_btn" + i;
比如在click方法里,我按的是第一个按钮,也就是flashmo_btn0,那么我希望发送fscommand('bt','b0');


如果我按的是第二个,则希望发送fscommand('bt','b1');以此类推,因为现在我的是遍历生成按钮,怎么实现这种方法呢,新手,希望在VC中调用不同按钮发送的不同命令,请高手指教

[解决办法]
给你写个抛砖的代码。
这样,不管你在场景中点击什么对象,都会进行判断。

JScript code
stage.addEventListener(MouseEvent.CLICK,StageClickEvt)function StageClickEvt(evt:MouseEvent):void{switch(evt.target.name){case "flashmo_btn0":fscommand('bt','b0');break;case "flashmo_btn1":fscommand('bt','b1');break;//以此类推}} 

热点排行