Thema: Delphi PNGImageList

Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.024 Beiträge
 
Delphi 12 Athens
 
#6

AW: PNGImageList

  Alt 30. Jan 2013, 00:21
Also erstmal zum Unterschied:

Eine TPngImageList ist abgeleitet von einer normalen TImageList und erweiter diese um PNG-Support. Wie jede andere TImageList müssen alle Bilder darin gleich groß sein. Alle Controls, die mit einer TImageList zusammenarbeiten können (z.B. TToolbar), sollten dies auch mit einer TPngImageList tun.

Im Gegensatz dazu können die Bilder in einer TPngImageCollection unterschiedliche Größe haben. Allerdings muss man sich hier um die Darstellung der Bilder selber kümmern.

Hier ein kleines Beispiel, wie man das macht.

Auf ein Form platziere eine TPngImageCollection und fülle diese mit diversen Bildern (über den Editor oder per Code). Dann brauchen wir noch ein TImage und einen TButton auf dem Form. Beim TImage setzen wir das AutoSize auf true (damit es sich an die Bildgröße anpasst). Im ButtonClick-Event steht dann folgender Code:

Delphi-Quellcode:
begin
  Image1.Picture.Graphic := PngImageCollection1.Items[Tag].PngImage;
  Tag := Tag + 1;
  if Tag >= PngImageCollection1.Items.Count then
    Tag := 0;
end;
Mit jedem Button-Click wird nun das nächste Bild aus der Collection dargestellt.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat