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 10/09/2007, 21h12   #1
Membre expérimenté
 
Avatar de jc_cornic
 
Inscription : octobre 2006
Messages : 624
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : octobre 2006
Messages : 624
Points : 588
Points : 588
Envoyer un message via MSN à jc_cornic
Par défaut [AS2] Décaler dynamiquement des Textfields

Bonsoir, j'utilise la classe TextField pour afficher des nombres à l'écran à des positions données...

Le code suivant fonctionne

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
for (var i=0 ; i<60 ; i++)
{
	var xx:Number = jeuVelo.leCircuit.lesCases[i].centreX;
	var yy:Number = jeuVelo.leCircuit.lesCases[i].centreY;
	var myText:TextField = 
		this.createTextField("monText"+i, this.getNextHighestDepth(),
					xx, yy, 20, 20);
	myText.text = i;
	myText.background = false ;
	myText.size = 8;
}

Par contre, si je veux décaler tous les textFields en faisant comme ci-après, ca n'affiche plus rien... ?????????????????????????????????

Code :
1
2
3
4
5
6
7
8
9
10
11
for (var i=0 ; i<60 ; i++)
{
	var xx:Number = jeuVelo.leCircuit.lesCases[i].centreX - 5;
	var yy:Number = jeuVelo.leCircuit.lesCases[i].centreY + 10;
	var myText:TextField = 
		this.createTextField("monText"+i, this.getNextHighestDepth(),
					xx, yy, 20, 20);
	myText.text = i;
	myText.background = false ;
	myText.size = 8;
}

Quelqu'un y comprend quelquechose ????

Merci d'avance et

++
JC
__________________
VELOMASTER, idée cadeau ? un jeu de plateau

Hummmmm, des donuts !!!!

Merci de penser à , et et aussi
jc_cornic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/09/2007, 22h29   #2
Membre habitué
 
Inscription : septembre 2006
Messages : 232
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 232
Points : 126
Points : 126
tu as vérifié que les textes ont bien été créés, en faisant par exemple :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
for (var i=0 ; i<60 ; i++)
{
	var xx:Number = jeuVelo.leCircuit.lesCases[i].centreX - 5;
	var yy:Number = jeuVelo.leCircuit.lesCases[i].centreY + 10;
	var myText:TextField = 
		this.createTextField("monText"+i, this.getNextHighestDepth(),
					xx, yy, 20, 20);
	myText.text = i;
	myText.background = false ;
	myText.size = 8;

	trace("_x = " + myText._x + " et _y = " + myText._y);

}
éloi_75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2007, 10h44   #3
Membre actif
 
Inscription : avril 2007
Messages : 126
Détails du profil
Informations personnelles :
Âge : 36
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : avril 2007
Messages : 126
Points : 150
Points : 150
Hummm... je pencherais pour un problème de cast... tu est sûr du typage de centerX?

essaye un:
Code :
1
2
trace(typeof(jeuVelo.leCircuit.lesCases[i].centreX));
trace(xx+" , "+yy);
entre var yy et var myText

...
David Buff est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2007, 18h17   #4
Membre expérimenté
 
Avatar de jc_cornic
 
Inscription : octobre 2006
Messages : 624
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : octobre 2006
Messages : 624
Points : 588
Points : 588
Envoyer un message via MSN à jc_cornic
Merci, je vais tester ça ce soir et vous dirai si cela résoud mon prob...

ps: merci aux modos pour le changement de titre (non explicite j'en conviens)

Par contre, comment on fait pour utiliser "trace" avec un projet qui cause à PHP et qui est utilisé en swf dans une page HTML...

Voici mon code pour appeler le swf

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
 
<?php
session_start();
 
// Variables de sessions : PSEUDO
 
echo '
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
 
<meta http-equiv="Cache-Control" content="no-cache, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Cache" content="no store" />
<meta http-equiv="Expires" content="-1" />	
 
 
 
    <title>test</title>
  </head>
  <body>
    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" 
     codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" 
     width="800" height="600" id="test" align="middle">
      <param name="allowScriptAccess" value="sameDomain"/>
      <param name="movie" value="test2.swf?mavariable='.$_SESSION['pseudo'] . '"/>
      <param name="quality" value="high"/>
	  <param name="wmode" value="transparent" />
      <embed wmode="transparent" />
 
      <embed src="test2.swf?mavariable='.$_SESSION['pseudo'] . '" quality="high" 
       width="800" height="600" name="test" align="middle" 
       allowScriptAccess="sameDomain" type="application/x-shockwave-flash" 
       pluginspage="http://www.macromedia.com/go/getflashplayer"/>
    </object>
  </body>
</html>
';
 
?>
J'utilise donc l'anim flash exportée mais je ne sais pas comment afficher la "trace"

Merci encore

++
JC
__________________
VELOMASTER, idée cadeau ? un jeu de plateau

Hummmmm, des donuts !!!!

Merci de penser à , et et aussi
jc_cornic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2007, 18h39   #5
Membre expérimenté
 
Avatar de jc_cornic
 
Inscription : octobre 2006
Messages : 624
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : octobre 2006
Messages : 624
Points : 588
Points : 588
Envoyer un message via MSN à jc_cornic
Resalut

En fait en affichant xx et yy, j'ai vu que le xx ne pose pas de problèmes mais c'est le yy


xx = 422;
xx - 5 = 417;

Mais
yy = 160;
yy+10 = 16010;


Je pige pô car les variables utilisées sont toutes de type Number...



Une idée ???????????

++
JC




EDIT, C'EST RESOLU

Voici le code qui marche
Code :
1
2
3
 
var xx:Number = jeuVelo.leCircuit.lesCases[i].centreX - 5;
	var yy:Number = Number(jeuVelo.leCircuit.lesCases[i].centreY) + Number(10);
__________________
VELOMASTER, idée cadeau ? un jeu de plateau

Hummmmm, des donuts !!!!

Merci de penser à , et et aussi
jc_cornic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/09/2007, 11h03   #6
Membre actif
 
Inscription : avril 2007
Messages : 126
Détails du profil
Informations personnelles :
Âge : 36
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : avril 2007
Messages : 126
Points : 150
Points : 150
C'était donc ça!

Juste pour dire:

Number(10), ça a pas trop de sens. Par contre tu as raison de caster le reste.

Enfin, tu devrais te demander pourquoi ta valeur yy est castée String... parce que si tu t'atendais à un nombre, c'est que tu as un problème quelque part, et que le pansement que tu as fait fonctionne, mais tu risques d'avoir d'autres bugg ailleurs...

Bon courage
David Buff 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 23h12.


 
 
 
 
Partenaires

Hébergement Web