Questions sur les images et les movieclips

Questions sur les images et les movieclips - Flash/ActionScript - Programmation

Marsh Posté le 25-05-2005 à 15:19:33    

Bonjour.
 
J'ai quelques problèmes d'AS, j'aimerai obtenir votre aide.
 
Tout d'abord, je fais un createEmptyMovieClip suivi d'un createClassObject (ou un loadMovie pour des jpgs), et je n'arrive pas à les supprimer une fois que je sors de la frame (c'est une suite de keyframe car c est comme un site avec différentes pages) j'ai regardé du côté de onUnload, de delete, mais rien n'y fais, je ne sais pas les supprimer, vous pouvez m'aider ?
 
Ensuite, j'aimerai créer dynamiquement n composants (soit des checkbox, un textfield, des radio etc) dans un scrollpane pour éviter que ca déborde et avoir une scrollbar mais je ne sais pas comment attacher le scrollpane (ou autre chose, tant que ca donne l effet désiré) aux boutons/labels que j'aimerai mettre dedans, comment faire ?
 
Enfin, j'aimerai redimensionner une image chargé par un loadMovie et après avoir cherché, j'ai su qu il fallait attendre que l image soit chargé pour accéder a ses dimensions, j'ai trouve de nomreuses methodes pour y parvenir, des timers, des conditions ou la width > 1 etc. laquelle fonctionne clairement ? celle ou la width > 1 ne me parait pas trop mal mais je crois que ca ne fonctionnait pas quand j ai testé..
 
Merci pour votre aide.

Reply

Marsh Posté le 25-05-2005 à 15:19:33   

Reply

Marsh Posté le 26-05-2005 à 14:08:53    

Hellop !!!
 
Pour la suppression, est-ce que tu as essayé myMc.removeMovieClip() ??
 
pour attacher un scrollpane, tu peux le faire avec createClassObject... c'est son contenu, qu'il faut gérer d'une manière un peu spéciale. En fait, tu as une propriété contentPath sur laquelle tu peux nommer un clip qui va s'y attacher. Donc si possible, avoir un clip dans la biblio, exporté pour actionScript, et tu met le nom d'exportation en tant que contentPath.
 
Après, pour y mettre du contenu, tu dois pouvoir faire un truc du genre  
monScrollPane.contentPath ou
monScrollPane.contentHolder pour récupérer le clip qui y est déposé, et le remplir comme tu veux.
 
Enfin, pour l'histoire de l'image à charger, il te faut faire un truc du genre :
 
var mc = this.createEmptyMovieClip('mc', 1);
mc.loadMovie( 'myContent.jpg' );
var flag = 0;
this.onEnterFrame = function()
{
        var t:Number = mc.getBytesTotal();
        var l:Number = mc.getBytesLoaded();
        var r:Number = l / t;
         
        if(r >= 1 && t > 0) // je verifie aussi que la detection de la taille total est ok
        {
        switch( flag )
                {
                case 0 :
                        if ( l < t )
                                trace( 'loading' );
                        else
                                {
                                trace( 'loaded' );
                                flag++;
                                }
                        break;
                case 5 :
                        // resize avec _xscale et _yscale
                        break;
                default :
                        flag++;
                        break;
                }
        }
}
 
tu dois en fait lancer un gestionnaire enterFrame qui va controler le chargement, et une fois que le chargement est fait, j'attend quelques entrées de frames que l'image s'initialise (c'est pour ça que je fais le resize au case 5 plutot qu'au case 2...)
 
Voilà. Bon courage ;)

Reply

Marsh Posté le 27-05-2005 à 13:37:38    

Ola,
 
Pour supprimer les clips, c est vrai qu il y avait removeMovieClip. Et finalement, je ne en ai plus besoin car tous est dans des scrollpanes, donc supprimer automatiquement.
 
Pour le scrollpane, je set le contentPath et ds son onLoad je rajoute avec des attachMovie et hop, le tour est joué.
 
Enfin concernant l image, ton code est impecc, mais encore une fois, j ai du utiliser un scrollpane, donc il me suffit de setter le contentPath et hop!
 
Merci beaucoup pour ton aide!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed