V Delphi Rio byla přidána podpora pro VCL multi resolution imagelisty.
V podstatě se jedná o dvě spolupracující komponenty:
Klíčové vlastnosti:
Začneme s TImageCollection. Přidáme někam, nejlépe do datamodulu TImageCollection - ten ponese fyzicky data. Ostatní pak je jen "View" na tyto data. Všimněte si, že jsem přidal 5 ikon a jen v jednom rozlišení. Samozřejmě můžu přidat více velikostí, ale přišlo mi, že dopočet z vyššího rozlišení zafunguje slušně.
V horním rohu je Add, které umí najednou přidat více ikon v různých velikostech. Mějme např. v adresáři
Po provedení importu rozhodí wizard 4 ikony na dvě po dvou velikostech.
Nyní máme TVirtualImageList, nastavíme u něj TImageCollection a zobrazíme jeho wizard a stiskem Add (pozor na property AutoFill) vložíme odkazy na ikony z ImageCollection.
Zároveň vidíme preview v daných rozlišení. Způsob dopočítávání rozlišení určuje property TImageCollection.InterpolationMode. Přenos ikon z existujícího imagelistu je možný přes popup menu u TImageCollection. Už jen přenosem existujících ikon dostaneme bonus v tom, že image list bude automaticky resamplovat staré ikony.
Toolbar při 150%
Původní ImageList, 16x16 pixelů
TVirtualImageList, 16x16 pixelů - původní ikony
TVirtualImageList - automatický resample z lepších ikon
Datum: 2019-02-28 11:57:00 Tagy: vcl