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 18/11/2007, 22h15   #1
En attente de confirmation mail
 
Inscription : octobre 2006
Messages : 123
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 123
Points : 80
Points : 80
Envoyer un message via MSN à jeremy13
Par défaut createTextField par le clique d'un bouton : marche pas

Salut,

Je débute en Flash et il y a une chose que je ne comprens pô...
J'ai un bouton avec le code suivant :

Code :
1
2
3
4
commentaire.onPress=function()
{	
	tmp();
}
Qui appelle cette fonction :


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
tmp=function()
{
 var leStyle:TextFormat = new TextFormat();
 leStyle.font = "Arial";
 leStyle.color=0xFFFFFF;
 trace("ok");
 this.createEmptyMovieClip("conteneur",this.getNextHighestDepth());
 conteneur._x=100;
 conteneur._y=100;
 conteneur.createTextField("affichage", this.getNextHighestDepth(), 0, 0, 150, 75);
 conteneur.affichage.wordWrap = true;
 conteneur.affichage.embedFonts = true;
 conteneur.affichage.text = "Hello world";
 conteneur.affichage.setTextFormat(leStyle);
}
Malheureusement je n'ai aucun texte qui s'affiche....par contre j'ai bien le trace("ok")...
J'ai vraiment besoin de votre aide ....

Merci d'avance
jeremy13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 12h08   #2
Membre régulier
 
Inscription : septembre 2006
Messages : 102
Détails du profil
Informations personnelles :
Âge : 60
Localisation : France

Informations forums :
Inscription : septembre 2006
Messages : 102
Points : 71
Points : 71
Envoyer un message via MSN à jpboogie Envoyer un message via Skype™ à jpboogie
Salut

Essaies comme ça, c'est mieux :
Code :
1
2
3
4
5
6
7
 
 conteneur.createTextField("affichage", conteneur.getNextHighestDepth(), 0, 0, 150, 75);
 
 conteneur.affichage.wordWrap = true;
 //conteneur.affichage.embedFonts = true;
 conteneur.affichage.text = "Hello world";
 conteneur.affichage.setNewTextFormat(leStyle);
Trois choses :

1 - le embedFonts fout la merde (ça je ne sais pas exactement pourquoi, mais j'ai pu le constater à plusieurs reprises.
2 - utilises setNewTextFormat plutôt que setTextFormat
3 - lors de la création du textField je pense qu'il préférable de gérer la profondeur par rapport au clip lui même (conteneur.getNextHighestDepth)
jpboogie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 12h18   #3
En attente de confirmation mail
 
Inscription : octobre 2006
Messages : 123
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 123
Points : 80
Points : 80
Envoyer un message via MSN à jeremy13
ok,merci jpboogie, j'essaierai ça ce soir...là je suis au taf

Par contre, j'me demandais si ça ne serait pas un problème au niveau des coordonnées, j'ai l'impression qu'il prend comme origine le bouton lui-même (et c'est pour ça que je ne vois rien car le bouton est petit et se situe en bas à droite) et pas l'origine de mon espace de travail...

Une remarque sur ça ?

Merci
jeremy13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 13h18   #4
Membre régulier
 
Inscription : septembre 2006
Messages : 102
Détails du profil
Informations personnelles :
Âge : 60
Localisation : France

Informations forums :
Inscription : septembre 2006
Messages : 102
Points : 71
Points : 71
Envoyer un message via MSN à jpboogie Envoyer un message via Skype™ à jpboogie
Citation:
Envoyé par jeremy13 Voir le message
ok,merci jpboogie, j'essaierai ça ce soir...là je suis au taf

Par contre, j'me demandais si ça ne serait pas un problème au niveau des coordonnées, j'ai l'impression qu'il prend comme origine le bouton lui-même (et c'est pour ça que je ne vois rien car le bouton est petit et se situe en bas à droite) et pas l'origine de mon espace de travail...

Une remarque sur ça ?

Merci
Non, rien à voir, tu cliques sur le bouton et tu creé un nouveau MovieClip donc pas de problème de ce côté.
jpboogie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 21h40   #5
En attente de confirmation mail
 
Inscription : octobre 2006
Messages : 123
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 123
Points : 80
Points : 80
Envoyer un message via MSN à jeremy13
Alors voili, pour etre très "propre", j'ai créé un nouveau document Flash (sous Flash 8), j'ai créé un nouveau bouton qui s'appelle "bouton" puis j'ai rajouté ce code :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
bouton.onRelease=function()
{
	 var leStyle:TextFormat = new TextFormat();
 	leStyle.font = "Arial";
 	leStyle.color=0xFF0000;
 	trace("ok");
	this.createEmptyMovieClip("conteneur",this.getNextHighestDepth());
 	conteneur._x=0;
 	conteneur._y=0;
	conteneur.createTextField("affichage", conteneur.getNextHighestDepth(), 0, 0, 100, 75);
 	conteneur.affichage.wordWrap = true;
 	conteneur.affichage.text = "Hello world";
 	conteneur.affichage.setNewTextFormat(leStyle);
}
donc ça ne marche toujours pas, j'ai bien la trace "ok"... et quand je fais :

Code :
1
2
3
4
5
6
7
8
9
10
11
bouton.onRelease=function()
{
	var leStyle:TextFormat = new TextFormat();
 	leStyle.font = "Arial";
 	leStyle.color=0xFF0000;
 	trace("ok");
	createTextField("affichage", getNextHighestDepth(), 0, 0, 100, 75);
 	affichage.wordWrap = true;
 	affichage.text = "Hello world";
 	affichage.setNewTextFormat(leStyle);
}
Là ça marche, c'est le conteneur qui fait du kaka...

mon_fichier_Flash

Si quelqu'un peut m'aider ça serait vraiment sympa...

Merciiiiiiiiiii
jeremy13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 21h47   #6
En attente de confirmation mail
 
Inscription : octobre 2006
Messages : 123
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 123
Points : 80
Points : 80
Envoyer un message via MSN à jeremy13
oki... j'me suis auto-résolu...Mercii!!

Voici le code qui marche bien :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
bouton.onRelease=function()
{
	 var leStyle:TextFormat = new TextFormat();
 	leStyle.font = "Arial";
 	leStyle.color=0xFF0000;
 	trace("ok");
	_root.createEmptyMovieClip("conteneur",this.getNextHighestDepth());
 	_root.conteneur._x=0;
 	_root.conteneur._y=0;
	_root.conteneur.createTextField("affichage", conteneur.getNextHighestDepth(), 0, 0, 100, 75);
 	_root.conteneur.affichage.wordWrap = true;
 	_root.conteneur.affichage.text = "Hello world";
 	_root.conteneur.affichage.setNewTextFormat(leStyle);
}
Il fallait juste lui préciser _root

jeremy13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 22h23   #7
Membre régulier
 
Inscription : septembre 2006
Messages : 102
Détails du profil
Informations personnelles :
Âge : 60
Localisation : France

Informations forums :
Inscription : septembre 2006
Messages : 102
Points : 71
Points : 71
Envoyer un message via MSN à jpboogie Envoyer un message via Skype™ à jpboogie
Bon ben écoutes soit tu transformes ton bouton en Clip, soit tu le déplaces dans le même calque que ton code et hop, le tour est joué.
jpboogie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 22h26   #8
En attente de confirmation mail
 
Inscription : octobre 2006
Messages : 123
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 123
Points : 80
Points : 80
Envoyer un message via MSN à jeremy13
Citation:
Envoyé par jpboogie Voir le message
Bon ben écoutes soit tu transformes ton bouton en Clip, soit tu le déplaces dans le même calque que ton code et hop, le tour est joué.
je ne comprends pas...pourquoi tu dis ça ?
jeremy13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 22h31   #9
Membre régulier
 
Inscription : septembre 2006
Messages : 102
Détails du profil
Informations personnelles :
Âge : 60
Localisation : France

Informations forums :
Inscription : septembre 2006
Messages : 102
Points : 71
Points : 71
Envoyer un message via MSN à jpboogie Envoyer un message via Skype™ à jpboogie
Essaies comme ça et tu verras que ça marche . Aies confiance petit scarabée
jpboogie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 22h39   #10
En attente de confirmation mail
 
Inscription : octobre 2006
Messages : 123
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 123
Points : 80
Points : 80
Envoyer un message via MSN à jeremy13
voili le petit scarabé a pris confiance...et ça marche

Merci encore de ton aide!

Elle est pas très visité cette partie du forum (AS), c'est dommage...

jeremy13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/11/2007, 22h42   #11
Membre régulier
 
Inscription : septembre 2006
Messages : 102
Détails du profil
Informations personnelles :
Âge : 60
Localisation : France

Informations forums :
Inscription : septembre 2006
Messages : 102
Points : 71
Points : 71
Envoyer un message via MSN à jpboogie Envoyer un message via Skype™ à jpboogie
Citation:
Envoyé par jeremy13 Voir le message
voili le petit scarabé a pris confiance...et ça marche

Merci encore de ton aide!

Elle est pas très visité cette partie du forum (AS), c'est dommage...

Si si il y a du monde ici , mais uniquement les couche tard ha ha ha
jpboogie 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 16h05.


 
 
 
 
Partenaires

Hébergement Web