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

求改一个程序,该怎么处理

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

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



// 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.00
var 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" );

然后在

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中调用不同按钮发送的不同命令,请高手指教
[解决办法]
给你写个抛砖的代码。
这样,不管你在场景中点击什么对象,都会进行判断。
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;
//以此类推
}
}

热点排行