Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash
Flash Forum d'entraide sur la technologie Flash (Cours, FAQs, Sources)
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 31/10/2007, 12h06   #1
Nouveau Membre du Club
 
Inscription : octobre 2007
Messages : 119
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 119
Points : 39
Points : 39
Par défaut Utilisation de la fonction "onload" et "onClipEvent"

Bonjour,

Je voudrais charger un swf contenant mon menu dans mon animation.
J'ai donc créer un clip vide (contener) avec comme nom d'occurence "ocNavi", sur l'image clef je place ce code

Code :
1
2
3
ocNavi.onLoad = function(){
	contener.loadMovie("navi.swf");
}
Mais ma navigation ne se charge pas.
La fonction "onLoad" est elle celle que je dois utiliser ?

Merci pour vos réponses.
guillaumeabxl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 12h30   #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 234
Points : 2 234
Lut,

si tu crée un clip vide,
dans le code de ta premiere image clée tu n'a pas besoins de vérifier si le clip est chargé, place directement ton code.
beekeep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 12h41   #3
Nouveau Membre du Club
 
Inscription : octobre 2007
Messages : 119
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 119
Points : 39
Points : 39
Code :
1
2
3
ocNavi.onLoad = function(){
	contener.loadMovie("navi.swf");
}
Je dois modifier quelle partie ?
guillaumeabxl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 13h41   #4
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 234
Points : 2 234
re,

tu pourrai mettre ton code complet ?

sinon je pense que ça serai directement :
Code :
1
2
 
contener.loadMovie("navi.swf");
beekeep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 14h20   #5
Nouveau Membre du Club
 
Inscription : octobre 2007
Messages : 119
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 119
Points : 39
Points : 39
Code :
contener.loadMovie("navi.swf");
le code est placé sur l'image clefs mais le menu ne se charge pas.

Je ne comprend pas. Si tu as une idée.
Merci,
Guillaume
guillaumeabxl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 14h23   #6
Nouveau Membre du Club
 
Inscription : octobre 2007
Messages : 119
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 119
Points : 39
Points : 39
Par contre si je mets le code sur le clip, au debuggage il me conseil de l'utiliser dans le gestionnaire onClipEvent.

Cela ne convient pas :

Code :
onClipEvent.contener.loadMovie("navi.swf");
Je doit l'incorporer comment ?
guillaumeabxl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 18h06   #7
Nouveau Membre du Club
 
Inscription : octobre 2007
Messages : 119
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 119
Points : 39
Points : 39
Je vais plutôt utiliser le gestionnaire "onClipEvent" avec comme instruction "load".

Alors :

Lorsque mon clip vide est chargé : je lui demande de charger le swf "navi.swf" dans le clip "contener" :
Code :
contener.loadMovie("navi.swf");
Le code ne donne rien, quelqu'un peu t'il m'aider ?
Merci.

Code :
1
2
3
onClipEvent (load) {
contener.loadMovie("navi.swf"); 
}
guillaumeabxl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 19h01   #8
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 234
Points : 2 234
re,

créer un clip vide et charger ton clip dedans :

Code :
1
2
3
var conteneur = this.createEmptyMovieClip("ctn", this.getNextHighestDepth());
 
loadMovie("navi.swf",conteneur);
;)
beekeep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 19h21   #9
Nouveau Membre du Club
 
Inscription : octobre 2007
Messages : 119
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 119
Points : 39
Points : 39
Merci, beekeep
Super !!! on y est presque !!!!
Le swf "navi" chargé clignote sans cesse
Alors je suis allé dedans pour placer un stop sur la première keyframe, ça clignotte encore.

C'est peut être du à mon AS qui me permet d'afficher mon site en fullscreen :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
 
stop();
 
Stage.align = "LT";// indique au swf de se positionner en haut à gauche.
Stage.scaleMode = "noScale";
 
//positionnement sur la scene
MovieClip.prototype.stagePosition = function(alignV, alignH) {
	/* ALIGNV alignement vertical
	"T" top /"B" bottom /"M" middle
	"L" left /"R" right /"C" center
	*/
	switch (alignV) {
		case "T" :
			this._y = 0;
			break;
		case "B" :
			this._y = Stage.height/1-this._height/1;
			break;
		case "M" :
			this._y = Stage.height/2-this._height/2;
			break;
		default :
			this._y = 0;
	}
	switch (alignH) {
		case "L" :
			this._x = 0;
			break;
		case "R" :
			this._x = Stage.width-this._width;
			break;
		case "C" :
			this._x = Stage.width/2-this._width/2;
			break;
		default :
			this._x = 0;
	}
};
 
 
var ResizeListener:Object = new Object();
 
ResizeListener.onResize = function() {
	ocTitre.stagePosition("T","C");
	ocNavi.stagePosition("B","C");
	ocCorps.stagePosition("M","C");
	if (Stage.width > 400) {
		ocMenu.stagePosition("B","L");
		ocMenu._visible=true;
	}else {
		ocMenu._visible=false;
	}
};
Stage.addListener(ResizeListener);
 
/* on appelle manuellement la fonction la 1ere fois
 car si l'utilisateur ne bouge pas sa fenetre, on n'aura
 jamais de positionnement initial.*/
ResizeListener.onResize();
guillaumeabxl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 19h22   #10
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 234
Points : 2 234
hé non ..

c'est dans le clip qui charge ton menu qu'il faut placer un stop pour ne le charger qu'une fois.
beekeep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 19h25   #11
Nouveau Membre du Club
 
Inscription : octobre 2007
Messages : 119
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 119
Points : 39
Points : 39
et bien il y a déjà un j'ai même rajouté

Code :
1
2
3
stop();
var conteneur = this.createEmptyMovieClip("ocNavi", this.getNextHighestDepth());
loadMovie("navi.swf",conteneur);
guillaumeabxl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 19h36   #12
Nouveau Membre du Club
 
Inscription : octobre 2007
Messages : 119
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 119
Points : 39
Points : 39
Peut tu m'expliquer à quoi correspond "conteneur" dans ton code ?
guillaumeabxl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 19h51   #13
Nouveau Membre du Club
 
Inscription : octobre 2007
Messages : 119
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 119
Points : 39
Points : 39
n'est ce pas du a la fonction
Code :
Stage.addListener(ResizeListener);
de mon code "fullscreen" ?
guillaumeabxl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 20h29   #14
Nouveau Membre du Club
 
Inscription : octobre 2007
Messages : 119
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 119
Points : 39
Points : 39
Citation:
c'est dans le clip qui charge ton menu qu'il faut placer un stop pour ne le charger qu'une fois.
Tu veux dire de mettre le stop(); dans le clip ou sur la keyframe du clip ?

Je crois que le clignottement vient de mon ResizeListener.onResize(); (contenu dans mon code pour le fullscreen) car quand je deplace la fenetre le swf (navi) chargé disparé jusqu'a ce que j'arrete de la deplacer.

Je suis un peu pomé, si tu avais une idée ?
guillaumeabxl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 20h58   #15
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 234
Points : 2 234
re,

Citation:
Peut tu m'expliquer à quoi correspond "conteneur" dans ton code ?
cette variable correspond au MovieClip qui est crée par la fonction createEmptyMovieClip.
d'ailleur j'aurai du mettre :
Code :
var conteneur:MovieClip = ..
sinon pour ta fonction onResize je vois pas trop, t'as essayé de supprimer le else { } pour voir ?
beekeep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2007, 22h00   #16
Nouveau Membre du Club
 
Inscription : octobre 2007
Messages : 119
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 119
Points : 39
Points : 39
je vais voir cela demain, je te tiens au courant.
guillaumeabxl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/11/2007, 10h32   #17
Nouveau Membre du Club
 
Inscription : octobre 2007
Messages : 119
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 119
Points : 39
Points : 39
voila j'ai modifié l'apparition de ton code pour le mettre sur la première keyframe de ma timeline et tout fonctionne bien.

Beekeep merci pour ton aide.

Maintenant il faut que je me depatouille avec ces histoires de MovieClip.loadMovie.

Tu crois que je peux utiliser ta fonction pour la mettre sur un bouton et charger les swf "rubrique" du site ?

Code :
1
2
var conteneur = this.createEmptyMovieClip("ocNavi", this.getNextHighestDepth());
loadMovie("navi.swf", conteneur);
Comment faire pour appliquer cette fonction à un bouton ?
guillaumeabxl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/11/2007, 14h01   #18
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 234
Points : 2 234
lut,

une action sur un bouton :
Code :
1
2
3
4
btn.onRelease = function()
{
   // ton code
}
n'oublie pas de regarder dans la FAQ pour ce genre de problèmes !
http://flash.developpez.com/
beekeep 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 06h54.


 
 
 
 
Partenaires

Hébergement Web