Bonjour,
Un grand merci encore pour ce tuto excellent !
En revanche, j'ai encore une tite question. J'essaye ce matin de bien comprendre la différence entre la programmation procédurale et orientée objet et j'essaye de repasser ce code dans une classe.
j'ai appelé ma classe "Artkabis", rangé dans com/fr/artkabis/
J'ai bien lié mon .fla à la classe Artkabis et bien sur viré le calque action présent dans le tuto.
Seulement je n'arrive pas à faire quelque chose qui marche correctement. Je ne sais pas si j'ai un problème de logique ou si tout simplement il me manque des import flash dans mon package...
Si quelqu'un peut m'aider, je lui en serai très reconnaissante !
Voici le code de ma classe Artkabis :
Claxie
Un grand merci encore pour ce tuto excellent !
En revanche, j'ai encore une tite question. J'essaye ce matin de bien comprendre la différence entre la programmation procédurale et orientée objet et j'essaye de repasser ce code dans une classe.
j'ai appelé ma classe "Artkabis", rangé dans com/fr/artkabis/
J'ai bien lié mon .fla à la classe Artkabis et bien sur viré le calque action présent dans le tuto.
Seulement je n'arrive pas à faire quelque chose qui marche correctement. Je ne sais pas si j'ai un problème de logique ou si tout simplement il me manque des import flash dans mon package...
Si quelqu'un peut m'aider, je lui en serai très reconnaissante !
Voici le code de ma classe Artkabis :
- Code:
package com.fr.artkabis
{
import com.greensock.TweenLite;
import com.greensock.easing.*
import com.fr.utils.Rollover;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.events.MouseEvent;
import flash.text.TextField;
import flash.text.TextFormat;
import flash.text.TextFieldAutoSize;
public class Artkabis extends MovieClip
{
private var style :StyleSheet;
private var heading :Object;
private var ombre :DropShadowFilter;
private var ombre2 :DropShadowFilter;
private var body :Object;
private var pagActu :int;
private var m :MovieClip;
private var page :Page;
private var boutons :Array;
private var btns :MovieClip;
private var nbP :int;
private var centreX :int;
public function Artkabis (params:Object):void
{
m = menu;
centreX = stage.stageWidth/2;
style = new StyleSheet();
page = new Page();
heading = new Object();
body = new Object();
ombre = new DropShadowFilter(0,45,0x00000,1,4,4,1,3);
ombre2 = new DropShadowFilter(0,45,0x00000,1,20,20,1,3);
boutons = new Array(m.bt1,m.bt2,m.bt3,m.bt4,m.bt5,m.bt6,m.bt7,m.bt8);
page.mouseChildren = false;
heading.fontWeight = "bold";
heading.font = 'Visitor TT2 BRK';
heading.color = "#FF0000";
body.fontStyle = "italic";
style.setStyle(".heading", heading);
style.setStyle(".body", body);
page.filters = [ombre2];
this.addChild(page);
page.y = (stage.stageHeight+(stage.stageHeight/10))/2;
TweenLite.to(page,.6,{x:centreX,ease:Back.easeOut});
for (var i:uint=0; i<boutons.length; i++)
{
btns = boutons[i];
var roll:Rollover = new Rollover({mc:btns,mChilds:true});
btns.titreBt.styleSheet = style;
btns.addEventListener('mouseUp',ouvrePage);
btns.titreBt.htmlText = "<body><font size='12'><span class='heading'>A</span>rt-k "+(i+1)+"</font></body>";
}
stage.addEventListener('mouseMove',detect);
}
private function detect(me:MouseEvent):void
{
if(mouseY>0 && mouseY<menu.height* 1.2)
{
TweenLite.to(menu,.4,{y:0,ease:Sine.easeOut});
TweenLite.to(onglet,.4,{y:-onglet.height,ease:Sine.easeOut});
}else
{
TweenLite.to(menu,.4,{y:-menu.height,ease:Sine.easeOut});
TweenLite.to(onglet,.4,{y:0,ease:Sine.easeOut});
}
}
private function ouvrePage(me:MouseEvent):void
{
m.mouseChildren = false;
nbP = int(me.target.titreBt.text.substr(me.target.titreBt.text.length-2,me.target.titreBt.text.length))
if(nbP != pagActu)TweenLite.to(page,1,{x:-page.width,ease:Back.easeOut,onComplete:function replace():void{
page.nbPage.text = String(nbP)
pagActu = nbP;
TweenLite.to(page,1,{x:centreX,ease:Back.easeOut,onComplete:function reactiv():void{m.mouseChildren = true}});
}});
else if (nbP === pagActu){
m.mouseChildren = true
}
}
}
}
Claxie