Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia galera, to com um duvida se puderem me ajudar... é o seguinte
tenho o código abaixo no meu flash que gera um menu puxando de um xml. gostaria de saber se é possivel e como fazer.. com que no xml eu declare para cada menu e submenu um frame... e quando ele gerar e eu clicar no meu ele pule para frame declarado no xml.. é possivel..???? o menu xml ele gera normal.. s[o preciso saber como fazer para ele pegar o frame do xml e executar.
segue abaixo o código flash:
//import classes and packages
import mx.transitions.easing.*;
import gs.TweenMax;
import com.greensock.*;
stop();
//Criar funcão dos bts do menu
function addButtons() {
pushOverY = 0;
for (i=0; i<totalButtons; i++) {
menu.attachMovie("rectangle","rectangle",-1,{_x:0, _y:rY});
btn = menu.attachMovie("button", "btn"+i, i, {_x:0, _y:pushOverY, id:i});
btn.initialY = btn._y;
btn.textMC.t.autoSize = "left";
btn.textMC.t.text = obj.buttons[i].attributes.title;
btn.textMC.t.textColor = iC;
pushOverY += 27;
//set events for this button
setBtnEvents(btn);
//add submenu items
pushOverX = 0;
btn.totalSubItems = obj.buttons[i].childNodes.length;
for (j=0; j<btn.totalSubItems; j++) {
subItem = btn.subMenu.attachMovie("subItem", "subItem"+j, j, {_x:pushOverX, _y:0, id:j});
subItem.t.autoSize = "left";
subItem.t.text = obj.buttons[i].childNodes[j].attributes.title;
subItem.t.textColor = siC;
pushOverX += subItem._width+10;
}
}
Mouse.addListener(mouseListener);
}
//create function for buttons events
function setBtnEvents(btn:MovieClip) {
btn.back.onRollOver = function() {
overBtn = this._parent;
if(this != pressedBtn){
if(pressedBtn != undefined){
tweenBtn(pressedBtn,100,iC,32,.8);
}
tweenBtn(this,140,iROC,75,.8);
tweenRectangle(this._parent.initialY,.8);
}
};
btn.back.onRollOut = function() {
if(this != pressedBtn){
if(pressedBtn != undefined){
tweenBtn(pressedBtn,160,iROC,90,.8);
tweenRectangle(pressedBtn._parent.initialY,.8);
}else{
tweenRectangle(rY,.8);
}
tweenBtn(this,100,iC,32,.8);
}
};
btn.back.onPress = function() {
//Retirar objeto depois do clique
tweenRectangle(rY,.8);
tweenBtn(this,100,iC,32,.8);
//pressedBtn = this;
//if is not pressed over subMenu then select the first subitem
if(!pressedBtn._parent.subMenu.hitTest(_xmouse,_ymouse)){
var cl:Color = new Color(pressedSubItem);
cl.setRGB(siC);
pressedSubItem = pressedBtn._parent.subMenu["subItem"+0];
var cl:Color = new Color(pressedSubItem);
cl.setRGB(siROC);
//ADD HERE CUSTOM FUNCTION
}
}
}
//create tweens with TweenMax
function tweenBtn(mc:MovieClip,textScale:Number,textTint:Number,backHeight:Number,sec:Number){
mc.lastHeight = mc._height;
TweenMax.to(mc._parent.textMC,sec,{_xscale:textScale, _yscale:textScale, tint:textTint, ease:Strong.easeOut});
TweenMax.to(mc,sec,{_height:backHeight, ease:Strong.easeOut, onUpdate:moveButtons, onUpdateParams:[mc]});
}
function tweenRectangle(newY:Number,sec:Number){
TweenMax.to(menu.rectangle,sec,{_y:newY, ease:Strong.easeOut});
}
function moveButtons(btn:MovieClip) {
btn.currentHeight = btn._height;
for (i=btn._parent.id+1; i<totalButtons; i++) {
menu["btn"+i]._y += btn.currentHeight-btn.lastHeight;
}
btn.lastHeight = btn._height;
}
var rY = 240; //rectangle initial y
var iC:Number = new Number();//item color
var iROC:Number = new Number();//iem rollover color
var siC:Number = new Number();//subitem color
var siROC:Number = new Number();//subitem rollover color
var totalButtons:Number = new Number();
var overBtn:MovieClip = new MovieClip();
var pressedBtn:MovieClip = undefined;
var pressedSubItem:MovieClip = new MovieClip();
var mouseListener:Object = new Object();
//create subItems events
mouseListener.onMouseMove = function() {
overSubItems = 0;
for (j=0; j<overBtn.totalSubItems; j++) {
s = overBtn.subMenu["subItem"+j];
if (s.hitTest(_xmouse, _ymouse)) {
var cl:Color = new Color(s);
cl.setRGB(siROC);
overSubItems++;
} else {
var cl:Color = new Color(s);
cl.setRGB(siC);
}
}
if (overSubItems == 0) {
var cl:Color = new Color(pressedSubItem);
cl.setRGB(siROC);
}
};
mouseListener.onMouseDown = function() {
for (j=0; j<overBtn.totalSubItems; j++) {
s = overBtn.subMenu["subItem"+j];
if (s.hitTest(_xmouse, _ymouse)) {
pressedSubItem = s;
//ADD HERE CUSTOM FUNCTION
}
}
};
//object that contains data from xml
var obj:Object = new Object();
//create new xml object
var xml:XML = new XML();
xml.ignoreWhite = true;
//after the xml is loaded, load variables and parse the date to obj
xml.onLoad = function(succes) {
if (succes) {
//get colors values from xml
iC = Number(this.firstChild.attributes.itemColor);
iROC = Number(this.firstChild.attributes.itemRollOverColor);
siC = Number(this.firstChild.attributes.subitemColor);
siROC = Number(this.firstChild.attributes.subitemRollOverColor);
obj.buttons = this.firstChild.childNodes;
totalButtons = obj.buttons.length;
//function call
addButtons();
} else {
trace("xml could not load");
}
};
//the path to the xml file
xml.load("menu.xml");
E esse abaixo é o xml:
<?xml version="1.0" encoding="UTF-8"?>
<menu itemColor="0xFFFFFF" itemRollOverColor="0xFFFFFF" subitemColor="0xFFFFFF" subitemRollOverColor="0xFF6600">
<item title="HOME" menu_goto_frame = "2" menu_goto_mctarget = "_root">
</item>
<item title="EMPRESA" menu_goto_frame = "3" menu_goto_mctarget = "_root">
</item>
<item title="GALERIA menu_goto_frame = "4" menu_goto_mctarget = "_root"">
<subitem title="Banheiros" menu_goto_frame = "4" menu_goto_mctarget = "_root"/>
<subitem title="Closets" menu_goto_frame = "4" menu_goto_mctarget = "_root"/>
<subitem title="Cozinhas" menu_goto_frame = "4" menu_goto_mctarget = "_root"/>
<subitem title="Dormitórios" menu_goto_frame = "4" menu_goto_mctarget = "_root"/>
<subitem title="Home Oficce" menu_goto_frame = "4" menu_goto_mctarget = "_root"/>
<subitem title="Home Theaters" menu_goto_frame = "4" menu_goto_mctarget = "_root"/>
</item>
<item title="PROJETOS" menu_goto_frame = "5" menu_goto_mctarget = "_root">
<subitem title="Banheiros" menu_goto_frame = "5" menu_goto_mctarget = "_root"/>
<subitem title="Closets" menu_goto_frame = "5" menu_goto_mctarget = "_root"/>
<subitem title="Cozinhas" menu_goto_frame = "5" menu_goto_mctarget = "_root"/>
<subitem title="Dormitórios" menu_goto_frame = "5" menu_goto_mctarget = "_root"/>
<subitem title="Home Oficce" menu_goto_frame = "5" menu_goto_mctarget = "_root"/>
<subitem title="Home Theaters" menu_goto_frame = "5" menu_goto_mctarget = "_root"/>
</item>
<item title="CONTATO" menu_goto_frame = "6" menu_goto_mctarget = "_root">
</item>
</menu>
agradeceço desde de ja.. abraço
Carregando comentários...