Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Zeichenfläche einer Image-K. zur Laufzeit nicht vergrößerbar


DelphiMan - Sa 07.06.03 23:12
Titel: Zeichenfläche einer Image-K. zur Laufzeit nicht vergrößerbar
Hallo zusammen!

der titel sagt eigentlich schon alles.
Habe eine image komponente als alClient aufs formular gelegt. wenn ich das formular zur laufzeit maximiere und auf die image komponente mit canvas routinen zeichne, bspw. eine linie von oben links bis image.width, image.height so wird die linie abhängig von der zur entwurfszeit festgelegten größe der image komponente abgeschnitten. die canvas routinen "wissen" allerdings, dass die image komponente (bei maximieren) größer geworden ist und routinen werden auch für die aktuelle größe ausgeführt, nur dass kreise, linien oder was auch immer abgeschnitten werden.
kurz, die eigentliche zeichenfläche der image komponente bleibt immer die, die zur entwurfszeit festgelegt wurde.
wie kann man dieses falsche verhalten unterbinden?

MfG
DelphiMan


MichaelSe - Fr 13.06.03 15:48
Titel: Das Problem liegt im TBitmap Object
Hallo,

bei einer Größenänderung wird lediglich das TPicture Object verändert, nicht aber enthaltene TBitmap Object, daß den Canvas zur Verfügung stellt. Daher muß man lediglich beim TPicture.Resize Event die neue Höhe und Breite dem Bitmap Object zuweisen. Das wars

mgf Michael


DelphiMan - Fr 13.06.03 17:27
Titel: Danke!!
Danke! Das erklärt und löst das Problem!

MfG
DelphiMan