Zitat von
Christian Seehase:
also in D5 ist unter TCanvas die Eigenschaft ClipRect beschrieben
Achso.
Zitat von
Christian Seehase:
Das wird dann durch die Grösse der Bitmap eingestellt, aber darauf muss man erst mal kommen
Schon recht viel Canvas-Graphik-Programmierung betrieben.
Zitat von
Christian Seehase:
Warum dann kein SetClipRect implementiert wurde, dass die Bitmap entsprechend einstellt wird wohl ewig das Geheimnis von Borland bleiben.
Nicht unbedingt. Da der (Control)Canvas ja nicht nur für Bitmaps sondern halt auch für Paintboxen, Labels und andere Controls da ist, kann der/die/das Canvas auch nicht direkt in seiner Größe verändert werden. Letzlich ist der Canvas auch nur ein weiteres
Handle in der Control. Windows weiss anhand der Zuweisung des Canvas-Handels zu welcher Control dieses geöhrt und kann dann entsprechend "malen". In diese Richtung kann Windows auch die verfügbare Fläche ermitteln. Wenn man das weiss, dann ist die Schlußfolgerung für das "wie erhalte ich mehr Platz auf meinem Canvas" recht einfach. Stell Dir mal vor, das gänge anders herum.
Delphi-Quellcode:
...
Canvas.Handle := GetDC(0);
try
Canvas.SetClipRect(0,0,45,300); // was für eine Bildschirmauflösung das jetzt wär...
...
...
...