Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash > AS1/AS2
AS1/AS2 Questions relatives à la programmation ActionScript 1 et 2 (Cours AS2)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/12/2007, 17h01   #1
Invité de passage
 
Inscription : novembre 2007
Messages : 2
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 2
Points : 1
Points : 1
Par défaut probleme loadmovie / unloadmovie

Bonjour,

Voici mon problème : j'ai un swf qu'on nommera index.swf dans lequel il y a un bouton appelant un autre swf, demo.swf :

Code :
1
2
3
on (release) {
	_root.loadMovie("demo.swf", "demo_mc", _root.getNextHighestDepth(),{_x:0, _y:0} );
}
ça marche niquel jusque là : en pressant le bouton, demo.swf se charge et se lance.

Dans le demo.swf, j'ai mis un bouton pour décharger demo.swf avec ce code :

Code :
1
2
on (release) {_root.unloadMovie(demo_mc);
}
mais rien à faire, avec root, sans root, je n'arrive pas à décharger demo.swf avec un bouton contenu dans demo.swf...

Quelqu'un a une idée ?

Merci bcp
oxade est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/12/2007, 21h14   #2
Rédacteur/Modérateur
 
Avatar de beekeep
 
Homme
Développeur informatique
Inscription : octobre 2006
Messages : 1 606
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 26
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : octobre 2006
Messages : 1 606
Points : 2 233
Points : 2 233
Lut,

tu as 2 animations distinctes, donc 2 _root etc même si elle sont affichées ensemble au final.

donc dans ton anim demo, il n'existe aucun clip 'demo_mc'.

tu peux le vérifier avec :

Code :
1
2
3
4
 on (release)
{
 trace(demo_mc);
}
je ne pense pas que tu puisse décharger ton anim dans l'anim elle même.

il faut que tu gère ça dans le fichier index.
beekeep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/12/2007, 11h09   #3
Invité de passage
 
Inscription : novembre 2007
Messages : 2
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 2
Points : 1
Points : 1
j'ai résolu le problème, je met le code ici si ça peut servir

dans index.swf, sur le bouton il y a :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
on (release){
	_root.createEmptyMovieClip("demo_mc",2);
	_root.demo_mc._x=0;
	_root.demo_mc._y=0;
	_root.demo_mc.loadMovie("demo.swf");}
 
et dans demo.swf j'ai mis sur une frame (le bouton s'appelle btnfermerdemo) :
 
btnfermerdemo.onRelease = function (){
	stop();
	_root.demo_mc.removeMovieClip()
	}
------------

A présent je suis confronté à un autre problème.

Dans index.swf, il y a pas mal d'attachMovie, qui sont appelés de cette façon grace à des boutons. Exemple :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// il existe une variable pour savoir si le clip est ouverte ou pas : Fnt2ouvert
on (release) {
	if ( _root.Fnt2ouvert == "0")
		{
		_root.attachMovie("Fnt2", "Fnt2_mc", _root.getNextHighestDepth(),{_x:0, _y:0} );
		_root.Fnt2_mc._x=357;
		_root.Fnt2_mc._y=270;
		_root.Fnt2ouvert = "1";
		trace (_root.Fnt1ouvert) 
		}
	else
	{
     removeMovieClip(_root.Fnt2_mc);
	_root.Fnt2ouvert = "0";
	trace (_root.Fnt2ouvert)
	 }}
l'idée est que lorsque je clique sur le bouton qui appelle demo.swf, cela ferme les clips apellés par attachMovie. Exemple :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//J'appelle par un bouton le clip Fnt1
 
on (release) {
	if ( _root.Fnt1ouvert == "0")
		{
		_root.attachMovie("Fnt1", "Fnt1_mc", _root.getNextHighestDepth(),{_x:0, _y:0} );
		_root.Fnt1_mc._x=357;
		_root.Fnt1_mc._y=270;
		_root.Fnt1ouvert = "1";
		trace (_root.Fnt1ouvert) 
		}
	else
	{
     removeMovieClip(_root.Fnt1_mc);
	_root.Fnt2ouvert = "0";
	trace (_root.Fnt2ouvert)
	 }}
//j'appelle par un bouton le clip Fnt2 par la même méthode, et LE bouton se trouve dans le clip Fnt2 (celui sensé appeler demo.swf, mais aussi du coup fermer tous les autres Movieclip comme Fnt1 et Fnt2. Code du bouton qui se trouve dans Fnt2 :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
on (release){
	_root.createEmptyMovieClip("demo_mc",2);
	_root.demo_mc._x=0;
	_root.demo_mc._y=0;
	_root.demo_mc.loadMovie("demobackoffice.swf");
	_root.Fnt2ouvert = "0";
        this.removeMovieClip(_root.Fnt2_mc); // Jusqu'ici tout va bien
 
	trace (_root.Fnt2ouvert) // déjà là, je n'ai pas de sortie
	_root.Fnt1ouvert = "0";
	trace(_root.Fnt1ouvert); // là non plus ça ne tsort pas la variable
 
// à partir de là j'ai testé ces différentes méthodes, toutes sans succès :
->	unloadMovie(_root.Fnt1_mc);
->	_root.Fnt1_mc.visible=false;
->    removeMovieClip(_root.Fnt1_mc);
 
// et évidemment, les autres clips ne se ferment pas non plus !
	_root.Fnt3ouvert = "0";
        _root.removeMovieClip(_root.Fnt3_mc)}

Donc voilà si quelqu'un a une idée... je suis prenneur car je commence à ne plus avoir de cheveux...
oxade est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h09.


 
 
 
 
Partenaires

Hébergement Web