Zitat von
turboPASCAL:
Erstelle dir ein Bitmap in deinem Prg. und zeichne darau was du möchtest.
Wenn es vergrössert/verkleinert werden muss kannst du dies über die
Bitmap .Width/.Height -Eigenschaften erledigen. Danach musst du alles neu
Zeichnen.
siehe
StretchBlt
Zitat von
turboPASCAL:
Wenn dies alles erledigt ist kannst du das Bitmap direkt über Canvas.Draw()
oder über ein Image auf deinem Formular anzeigen.
lieber
BitBlt im OnPaint, ist schneller.
die ganze Geschichte kannst du auch in ein TCustomControl packen, wo du im (überschriebenen) SetBounds das Bitmap-Resize und das StretchBlt machst (in separates Bitmap z.b. fBgBitmap, damit nicht bei jeder änderung resized werden muss). dann machst ne draw-Routine, wo der Hintergrund auf das eigentlich Offscreen-Bitmap (fBitmap) kopiert wird, deine eigenen Malroutinen aufgerufen werden und zum schluss Invalidate aufgerufen wird. jetzt must du nur noch in der (überschriebenen) Paint-Routine per BitBlt auf das canvas der Komponente kopieren.
so ist die Grundlage für meine selbstgemalten Controls (z.b.
http://circuitboard.sf.net )
HTH Frank