Toon posts:

[Delphi] Afbeelding krijgen van TChart

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo mede tweakers,

ik zit met een probleem, waar ik wel een manier voor heb gevonden maar die is niet echt handig en netjes.

Het dus zo: Ik zet de resultaten die uit mijn programma komen op het scherm en laat daar mooie grafiekjes bij maken.
Dat werkt allemaal goed.
De gebruiker moet de mogelijkheid hebben om de resultaten op te slaan. Dit gebeurt in een Excel file. (dit gaat ook goed).
Alleen wil ik nu dat de grafieken ook in het bestand komen.
Ik kan wel de SaveToBitmapFile() gebruiken en die daarna weer openen, maar dit is niet echt netjes.
En het programma wordt van CD gestart, dus moet ik ergens dat bestandje tijdelijk opslaan (en dan maar hopen dat ik daar genoeg rechten heb).

Weet iemand hier misschien een andere manier voor? Is er niet een API functie om een "screenshot" te krijgen van de huidige status van een control??


Waar ik ook nog mee zit is, dat ik niet weet hoe ik Excel (of Word) een afbeelding een cel krijg.

Alvast bedankt.

  • Monga
  • Registratie: Mei 2002
  • Laatst online: 19:44
Je kan een TBitmap aanmaken, en dan het canvas van de TChart assignen aan de bitmap (bitmap.assign(chart.canvas)).
Zover ik je begrijp heb je dan precies wat je wilt hebben; een bitmap die je verder kunt gebruiken binnen je programma zonder een tijdelijk bestand aan te hoeven maken.

Verwijderd

Topicstarter
Ok, hartstikke bedankt.

Maar heeft iemand nog antwoord op mijn 2e vraag?
Hoe krijg ik een plaatjes in een Excel formulier?

[ehm..]
Ik stel dit vraagje maar hier, er hoeft niet persee een heel nieuw topic voor gemaakt te worden.
[ehm..]

Verwijderd

Topicstarter
PROBLEEM :
ik heb ff snel dit geprobeerd :
code:
1
image1.Picture.Bitmap.Assign(chart1.Canvas);

Kan NIET worden gecompiled
"[Error] Unit1.pas(31): Incompatible types: 'TPersistent' and 'TCanvas3D'"

en
code:
1
image1.Picture.Bitmap.Assign(chart1.Canvas.ReferenceCanvas);

Dit kan wel worden gecompiled, maar geeft bij het uitvoeren een foutmelding:
"Cannot a TControlCanvas to a TBitmap"

  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

TChart.TeeCreateBitmap(ABackColor: TColor; Const Rect: TRect; APixelFormat: TPixelFormat): TBitmap;

We adore chaos because we like to restore order - M.C. Escher