Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flex
Flex Forum d'entraide sur la programmation Adobe Flex : applications Internet riches (RIA)
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 17/03/2011, 23h15   #1
Membre Expert
 
Avatar de Madfrix
 
Inscription : juin 2007
Messages : 2 278
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : juin 2007
Messages : 2 278
Points : 2 324
Points : 2 324
Par défaut Etendre ChartElement pour annoter un graph

Bonjour,

je souhaite annoter un graph à la manière des graphs financiers.

Je m'explique

Via un crosshair (réticule) sur le graph, je souhaite au déplacement de ce réticule pouvoir afficher dans un coin du graph les valeurs correspondant à l'endroit où le réticule pointe. J'ai crée ce réticule via un ChartElement et cela marche bien.

Code :
1
2
 
annotationElements = [new ChartElementPerso];
où ChartElementPerso correspond au ChartElement gérant mon réticule.

Maintenant, je souhaite ajouter des labels à mon ChartElementPerso afin d'afficher dynamiquement mes valeurs. Je procède ainsi (code simplifié) :

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
 
public class ChartElementPerso extends ChartElement
{
   public function ChartElementPerso()
   {
	super();
	init();		
   }
 
   private function init():void
   {			
	//addEventListener(MouseEvent.MOUSE_MOVE, onMove);
	//addEventListener(MouseEvent.ROLL_OUT, onRollOut); 
 
	Alert.show(String(numChildren));
 
	var test:Label = new Label();
	test.text = "test !";
	addChild(test);
 
	Alert.show(String(numChildren));
   }
 
}
Mon Label est de type mx puisque ChartElementPerso ne possède pas la méthode addElement mais addChild. Mon code ne plante pas mais...mon label ne s'affiche pas. Pourtant il semble bien ajouté à la liste d'affichage puisque mes alert affichent 0 puis 1 mais aucun changement visuel...

Pour info, j'ai trouvé mes sources d'un exemple ici (voir RangeSelector dans exemples.customizing) qui est devenu surement obsolète d'où probablement mon problème...

Quelqu'un aurait-il déjà travaillé sur ces fameux ChartElements et plus précisément l'ajout d'objets sur ceux-ci par hasard ?

Merci
__________________
Je ne réponds pas aux questions envoyées par mp
Madfrix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 12h06   #2
Membre Expert
 
Avatar de Madfrix
 
Inscription : juin 2007
Messages : 2 278
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : juin 2007
Messages : 2 278
Points : 2 324
Points : 2 324
Au lieu d'ajouter directement dans le ChartElement via addChild les objets, si je les ajoute dans le tableau des annotations directement (annotationElements), cela marche et me permet d'employer des composants Spark

Problème résolu
__________________
Je ne réponds pas aux questions envoyées par mp
Madfrix est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 18/03/2011, 21h57   #3
Membre Expert
 
Avatar de Madfrix
 
Inscription : juin 2007
Messages : 2 278
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : juin 2007
Messages : 2 278
Points : 2 324
Points : 2 324
Et pour ceux qui seraient confrontés au problème initial, il faut utiliser la fonction setActualSize() dans updateDisplayList sinon le composant (ici des labels) n'apparaissent pas...

Me demandez pas pourquoi
__________________
Je ne réponds pas aux questions envoyées par mp
Madfrix est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h38.


 
 
 
 
Partenaires

Hébergement Web