![]() |
Re: canvas probleme, oder so
OOps.. Ok danke schon mal. Ich habe aber auch noch etwas anderes damit gemeint, und zwar ob das der richtige Zeitpunkt ist
das Handle abzufragen, oder ob ihr das woanders machen würdet. Ich habs einfachheitshalber in diesen Routinen gemacht, damit wenn ich die Bilder während Laufzeit ändere auch hier die richtigen Icongrössen verwendet werden. könnte ich aber auch bei den Propertys z.B. SetPictureOver usw. machen. Oder ist das hier so in Ordnung?
Delphi-Quellcode:
Naja klappt auf jedenfall...
// Das Handle wird nicht benötigt.
// Durch diese Methode verlangt man vom Objekt mal in den Icon-Header zu // schauen ansonsten könnte man die reale Icongrösse nicht erruieren bevor // es das erste mal gezeichnet wird. procedure TEButton.DrawPicture; begin if (FPicture <> nil) then begin if (FPicture.Graphic is TIcon) then FPicture.Icon.handle; Canvas.Draw((Width - FPicture.Width) div 2,(Height - FPicture.Height) div 2 ,FPicture.Graphic); end; end; procedure TEButton.DrawPictureOver; begin if (FPictureUseOnlyOne) then DrawPicture else begin if (FPictureOver <> nil) then begin if (FPictureOver.Graphic is TIcon) then FPictureOver.Icon.handle; Canvas.Draw((Width - FPictureOver.Width) div 2,(Height - FPictureOver.Height) div 2 ,FPictureOver.Graphic); end; end; end; procedure TEButton.DrawPictureDown; begin if (FPictureUseOnlyOne) then DrawPicture else begin if (FPictureDown <> nil) then begin if (FPictureDown.Graphic is TIcon) then FPicture.Icon.handle; Canvas.Draw((Width - FPictureDown.Width) div 2,(Height - FPictureDown.Height) div 2 ,FPictureDown.Graphic); end; end; end; end. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz