Avatar billede mieritz Nybegynder
22. oktober 2003 - 14:18 Der er 5 kommentarer og
1 løsning

Hjælp til Teechart

Jeg har 10 værider(tal), som jeg skal have lagt ind i en teepie, men når jeg prøver på det så lægger den bare 10 pies oven i hinanden, men det er ikke sådan det skal være der skal være alle 10 værdier i den samme pie hvordan gør jeg det.
Avatar billede bertelbrander Novice
22. oktober 2003 - 23:08 #1
Avatar billede mieritz Nybegynder
23. oktober 2003 - 10:51 #2
Tak for eksemplet men det var ikke lige sådan at jeg havde tænkt mig det skulle være. Det der skal ske er at jeg får 10 tal værdier ind som skal fordeles procentmæssigt afhængigt af størrelse på en pie. Dette skal ske ved tryk på en knap. Når der bliver trykket på knappen skal alle 10 værdier altså sættes på med det samme.
Avatar billede bertelbrander Novice
23. oktober 2003 - 19:17 #3
Du skal vel blot putte 10 tal i når det trykkes på knappen i stedet for 1.

Jeg lavede lige en modifikation:

int x[10][2] =
{
  {5000,  RGB(random(256), random(255), random(255))},
  {5000/9, RGB(random(256), random(255), random(255))},
  {5000/9, RGB(random(256), random(255), random(255))},
  {5000/9, RGB(random(256), random(255), random(255))},
  {5000/9, RGB(random(256), random(255), random(255))},
  {5000/9, RGB(random(256), random(255), random(255))},
  {5000/9, RGB(random(256), random(255), random(255))},
  {5000/9, RGB(random(256), random(255), random(255))},
  {5000/9, RGB(random(256), random(255), random(255))},
  {5000/9, RGB(random(256), random(255), random(255))}
};

void __fastcall TForm1::OnPushMe(TObject *Sender)
{
  for(int i = 0; i < 10; i++)
    Series1->AddXY(1, x[i][0], "", TColor(x[i][1]));
}

Så fylder den første ca. halvdelen og de andre deles ligeligt om resten.
Du kan så lave x om til de ti tal du har som skal vises.
Den finder selv ud af den procentvise fordeling.
Avatar billede mieritz Nybegynder
29. oktober 2003 - 15:20 #4
Jeg har nu fået dem tegnet ind, men der er opstået et andet problem som jeg ikke kan løse. De tal jeg får ind er komma tal og de kommer ind som en double, men når de bliver lagt ind i AddXY bliver de lavet om til int idet tallene efter kommaet bliver skåret fra hvordan undgår jeg dette.
Avatar billede bertelbrander Novice
30. oktober 2003 - 00:11 #5
Du skal bruge Series1->Add(...) i stedet for AddXY(...):

struct
{
  double val;
  int color;
}table[4] =
{
  {0.0010000, RGB(random(256), random(255), random(255))},
  {0.0003333, RGB(random(256), random(255), random(255))},
  {0.0003333, RGB(random(256), random(255), random(255))},
  {0.0003333, RGB(random(256), random(255), random(255))}
};

void __fastcall TForm1::OnPushMe(TObject *Sender)
{
  for(int i = 0; i < 4; i++)
    Series1->Add(table[i].val, "", TColor(table[i].color));
}
Avatar billede mieritz Nybegynder
05. november 2003 - 10:23 #6
tak for hjælpen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester