DBChart - Größe des Pictures bei Export zur Laufzeit festlegen?



  • Hallo,
    ich möchte gern die Größe meines Diagramms des DBChart's beim kopieren in die Zwischenablage zur Laufzeit festlegen. Der Designer lässt das hier zu: DBChart-Export-Picture-Size-Width.
    Nur komme ich an diesen Wert zur Laufzeit nicht ran 😞

    Hat jemand einen Rat???

    Gruß
    Torsten



  • Hallo,

    ich habe noch nie mit dem DBChart gearbeitet, sollte aber genauso gehen wie beim Standard TChart.
    Du musst nur die Maße des Rechtecks festlegen:

    AnsiString pfad="c:\\testchart.bmp";
            TRect r = Chart1->BoundsRect;
            r.right = r.left + 50;    //Width  = 50
            r.bottom= r.top  + 100;   //Height = 100 
            TeeSaveToBitmap(Chart1, pfad, r);
    

    Gruß myerscola



  • Hi myerscola,

    danke erst mal für die Lösung. 👍
    Gibt es denn da auch etwas, um das Chart in die Zwischenablage zu kopieren? Ich würde nämlich gern beim Einfügen des Charts in eine ppt-Präsentation den Umweg über eine Datei umgehen wollen.

    Danke...
    Torsten



  • lol, wer lesen kann ist klar im Vorteil! 🙄
    Genau das war ja Deine ursprüngliche Frage.
    Aber das geht im Prinzip genau so:

    Chart1->CopyToClipboardBitmap(r);
    

    Gruß myerscola



  • Hallo,

    Es ist hier besser das Chart als Metafile in die Zwischenablage zu packen. Das ergibt eine bessere Qualität und es bleibt skalierbar.

    Chart1->CopyToClipboardMetafile(true);
    


  • Hi,
    jetzt hab ich's 😃 Dank Eurer Tips habe ich nun folgenden Code, mit dem ich das DBChart in die Zwischenablage kopieren kann. Dank dem Hinweis des Metafile's OHNE Qualitätsverlust.

    //Nicht vergessen :-)
    #include <TeeProcs.hpp>
    
    		TRect r = DBChart1->BoundsRect;
    		r.top = 0;   //damit der Rahmen oben verschwindet
    		r.left = 0;  //damit der Rahmen links verschwindet
    		DBChart1->CopyToClipboardMetafile(true,r);
    

    Vielen Dank dafür 👍
    Gruß Torsten


Anmelden zum Antworten