xzenou
Messages postés9Date d'inscriptionsamedi 4 mars 2006StatutMembreDernière intervention 9 juin 2007
-
7 juin 2007 à 17:20
cs_Loda
Messages postés814Date d'inscriptionvendredi 3 novembre 2000StatutMembreDernière intervention30 juillet 2009
-
11 juin 2007 à 09:19
Bonjour,
J'ai quelques petits problèmes avec le composant TChartSeries.
Dans mon programme je créais un composant Tchart et un composant TChartSeries dynamiquement dans un nouveau Ttabsheet aussi créé dynamiquement... ca en fait du dynamique ! :)
Tout marche bien seulement les données ne s'affiche pas dans la série, la légende est bien la mais pas le graph' ..
Je vous copie le code :
---------------------
var
T:Ttabsheet;
C:TChart;
i:integer;
S:TChartSeries;
begin
T:=Ttabsheet.Create(page_control);
T.Enabled:=true;
T.Name:='Tab';
T.Parent:=page_control;
T.PageControl := page_control
T.Caption := 'tab1';
C := Tchart.Create(T);
C.Parent:=T;
C.Align:=alclient; //Align sur le Ttabsheet
c.SeriesList.Clear;
S := TChartSeries.Create(T);
s.Parentchart := C ;
s.Name:= 'Serie1';
c.AddSeries(S);
{ creation_serie(s,'Bla') ;
s.Add(random(50),'Dupon', Clyellow);
s.Add(random(50),'Dupon', Clblue);
s.Add(random(50),'Dupon', Clred);
}
for i:=0 to 10 do
s.Add(random(50));
end;
---------------------------
Voila donc je vous remercie par avance car j'ai beau chercher sur internet, je ne comprend pas pourquoi cela ne marche pas ..
xzenou
Messages postés9Date d'inscriptionsamedi 4 mars 2006StatutMembreDernière intervention 9 juin 2007 8 juin 2007 à 12:08
Je te remerci, je suis trop content car ca fais depuis un petit moment que je cherche .
A part ca pour le .name c'est pour pouvoir retrouver le composant quand je fais une recherche sur tout les composants , car je vais ajouter au Top un numéro spécifique au séries (Histoire d'avoir toujours la main sur les composants, car je vais surement les supprimer ultérieurement..) .
cs_Loda
Messages postés814Date d'inscriptionvendredi 3 novembre 2000StatutMembreDernière intervention30 juillet 20093 8 juin 2007 à 12:51
salut,
si c'est pour le retrouver, tu peux:
- parcourire le MonChart.Series[i]
- garder un pointeur sur tes series créees dynamiquement dans un tableau / ou un champ d'object.
(genre si t'as une série par TPersonne, ajouter un champs de type TCustomChartSerie dans le TPersonne). C'est une bonne méthode. (perso, j'aime pas parcourir les compo par nom. c'est pas propre et lent)
bon code!
Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
xzenou
Messages postés9Date d'inscriptionsamedi 4 mars 2006StatutMembreDernière intervention 9 juin 2007 9 juin 2007 à 00:54
Suite à ton commentaire j'ai réalisé ceci :
P_graphique_objet:array [0..10] of ^TLineSeries;
..
..
S : TLineSeries ;
begin
P_graphique_objet[0].Ls := @S;
Mais je ne sais pas comment accéder au composant, exemple afin de le supprimer .. donc si tu pouvais un peux m'éclairer car les pointeurs sur type de base je comprend mais sur des objets l'accès doit etre différent je pense.
Vous n’avez pas trouvé la réponse que vous recherchez ?