Thema: Delphi canvas probleme, oder so

Einzelnen Beitrag anzeigen

Benutzerbild von cherry
cherry

Registriert seit: 14. Nov 2005
561 Beiträge
 
RAD-Studio 2009 Ent
 
#11

Re: canvas probleme, oder so

  Alt 3. Sep 2007, 06:57
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:
// 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.
Naja klappt auf jedenfall...
Ist das nur mein Gefühl, oder ist die ganze Welt verrückt geworden!?
  Mit Zitat antworten Zitat