how can I tell when a Repaint has finished?

TeeChart VCL for Borland/CodeGear/Embarcadero RAD Studio, Delphi and C++ Builder.
Post Reply
Andrew
Newbie
Newbie
Posts: 11
Joined: Thu Feb 06, 2003 5:00 am

how can I tell when a Repaint has finished?

Post by Andrew » Thu Jun 28, 2007 8:21 am

I have a chart which I'm populating like this:

Code: Select all

Chart->AutoRepaint = false;
for (many thousands of values)
{
    lineseries->AddXY(x,y,"",clRed);
}
Chart->AutoRepaint = true;
Chart->Repaint();
The problem is that the Repaint does not happen immediately. If I call Repaint(), and then immediatelly check the XValues or YValues lists for my series, they are empty. I need to know when the data is actually visible on the screen (and the X/Y lists have been populated), which doesn't happen until ? milliseconds after the Repaint is called. Is there some sort of property I can check, or method I can call to see if a Chart is still repainting? Any suggestions as to how I can tell that all data is now shown on the screen?

Cheers,

Andrew

Narcís
Site Admin
Site Admin
Posts: 14730
Joined: Mon Jun 09, 2003 4:00 am
Location: Banyoles, Catalonia
Contact:

Post by Narcís » Thu Jun 28, 2007 8:44 am

Hi Andrew,

You could use TChart's OnAfterDraw event for that purpose. An alternative could be using Series' OnAfterDrawValues.
Best Regards,
Narcís Calvet / Development & Support
Steema Software
Avinguda Montilivi 33, 17003 Girona, Catalonia
Tel: 34 972 218 797
http://www.steema.com
Image Image Image Image Image Image
Instructions - How to post in this forum

Post Reply