Redimentionner une partie d'une application

wigz Messages postés 2 Date d'inscription mardi 8 mars 2005 Statut Membre Dernière intervention 6 mai 2008 - 6 mai 2008 à 09:55
wigz Messages postés 2 Date d'inscription mardi 8 mars 2005 Statut Membre Dernière intervention 6 mai 2008 - 6 mai 2008 à 11:43
bonjours à tous,

je suis debutant en flash, et je cherche à pouvoir a l'interieur d'une appli selectionner un "cartouche" qui serait à la base un jpg, et le redimentionner,

ceci devrait etre fait à la manière de photoshop, c'est a dire, en cliquant sur le bord et en déplacant la souris, je n'ai aucune idée de la fancon dont je dois proceder.

d'avance je vous remercie de votre aide

3 réponses

cs_inaden Messages postés 618 Date d'inscription mercredi 4 avril 2007 Statut Membre Dernière intervention 27 août 2010 2
6 mai 2008 à 11:37
Salut,
bon, c'est pas ça, mais c'est une piste.
Un clip (leclip) qui contient l''image et un bouton (bt1) qui est en fais un clip composé de deux image clés avec un stop sur la première.
sur la première image un rectangle (transparent) qui fais le bord gauche du clip, sur la seconde image, le même en moins transparent (effet de rollOver).
Il faudrait ensuite faire quatre bouton avec quatre code (2 pour les y) et 1 autre pour l'autre côté avec inversion de signe.
Le code sur l'image clé de la scène :

ok=false;

bouton();

function bouton(){
    leclip.bt1.onRollOver=function(){
        this.gotoAndStop(2);
    }
    leclip.bt1.onRollOut=function(){
        this.gotoAndStop(1);
    }
    leclip.bt1.onPress=function(){
        trace("---> ORDRE");
        ok=true;
        verif();
    }
    leclip.bt1.onRelease=function(){
        trace("---> FIN D'ORDRE");
        ok=false;
        delete leclip.onEnterFrame;
    }
}

function verif(){
    posIni=_root._xmouse;
    trace("posINI = "+posIni);
    leclip.onEnterFrame=function(){
        trace("IF OK = "+ok);
        pourcentage=_root._xmouse-posIni;
        if(pourcentage<0){
            trace("IF : pourcentage = "+pourcentage);
        }
        else{
            trace("ELSE : pourcentage = "+pourcentage);
                if(leclip._xscale>10){
                    leclip._xscale-=pourcentage;
                    leclip._yscale-=pourcentage;
                }
                else{
                    delete leclip.onEnterFrame;
                }
        }
    }
}

Le problème est que j'arrive pas à arrêter l'enterFrame,
mais la photo se réduit.

Une autre version du code (qui ne fonctionne guère mieux
/*ok=false;

bouton();

function bouton(){
    leclip.bt1.onRollOver=function(){
        this.gotoAndStop(2);
    }
    leclip.bt1.onRollOut=function(){
        this.gotoAndStop(1);
    }
    leclip.bt1.onPress=function(){
        trace("---> ORDRE");
        ok=true;
        verif();
    }
    //leclip.bt1.onRelease=function(){
        trace("---> FIN D'ORDRE");
        ok=false;
        delete leclip.onEnterFrame;
    }
}

function verif(){
    posIni=_root._xmouse;
    trace("posINI = "+posIni);
    leclip.onEnterFrame=function(){
        if(ok){
            trace("IF OK = "+ok);
            pourcentage=_root._xmouse-posIni;
            if(pourcentage<0){
                trace("IF : pourcentage = "+pourcentage);
            }
            else{
                trace("ELSE : pourcentage = "+pourcentage);
                if(leclip._xscale>10){
                    leclip._xscale-=pourcentage;
                    leclip._yscale-=pourcentage;
                }
                else{
                    delete leclip.onEnterFrame;
                }
            }
        }
        else{
            trace("ELSE OK = "+ok);
            delete leclip.onEnterFrame;
        }
    }
}*/

Mais bon... c'est une piste. Si tu trouve, n'hésite pas à nous le faire savoir.
Tout vient à qui sait attendre
0
cs_inaden Messages postés 618 Date d'inscription mercredi 4 avril 2007 Statut Membre Dernière intervention 27 août 2010 2
6 mai 2008 à 11:43
ça y est j'ai trouvé :
Il fallait ajouter onReleaseOutside

ok=false;

bouton();

function bouton(){
    leclip.bt1.onRollOver=function(){
        this.gotoAndStop(2);
    }
    leclip.bt1.onRollOut=function(){
        this.gotoAndStop(1);
    }
    leclip.bt1.onPress=function(){
        trace("---> ORDRE");
        ok=true;
        verif();
    }
    leclip.bt1.onRelease=function(){
        trace("---> FIN D'ORDRE");
        ok=false;
        delete leclip.onEnterFrame;
    }
    leclip.bt1.onReleaseOutside=function(){
        trace("---> FIN D'ORDRE");
        ok=false;
        delete leclip.onEnterFrame;
    }
}

function verif(){
    posIni=_root._xmouse;
    trace("posINI = "+posIni);
    leclip.onEnterFrame=function(){
        trace("IF OK = "+ok);
        pourcentage=_root._xmouse-posIni;
        if(pourcentage<0){
            trace("IF : pourcentage = "+pourcentage);
        }
        else{
            trace("ELSE : pourcentage = "+pourcentage);
                if(leclip._xscale>10){
                    leclip._xscale-=pourcentage;
                    leclip._yscale-=pourcentage;
                }
                else{
                    delete leclip.onEnterFrame;
                }
        }
    }
}

Tout vient à qui sait attendre
0
wigz Messages postés 2 Date d'inscription mardi 8 mars 2005 Statut Membre Dernière intervention 6 mai 2008
6 mai 2008 à 11:43
merci beaucoup à toi, cela va bien m'aidé, j'ai commandé un livre en complement je devrait m'en sortir ;)

si vous avez d'autre pistes n'hesitez pas tout est bon à prendre ca permet de comprendre les rouages
0
Rejoignez-nous