如何将TImageList中的图片分配给TImage?

3
我只是使用 AppMethod 1.17(也称为 Delphi 10 Seattle)的试用版,因此无法查看源代码。
在 VCL 中,我使用了 TImageList.Draw() 方法,但是对于新的 TMultiResBitmap 类,我不知道如何使用它。

http://docwiki.embarcadero.com/Libraries/en/FMX.ImgList.TMultiResBitmap - J...
也可以参考这个链接:https://dev59.com/wmEi5IYBdhLWcg3wUK2C - J...
2个回答

5
我找到了一个解决方案,但不确定这是否是首选方法。
var
  s: TSizeF;
begin
  s.Create(32, 32); //Image size
  myImage.Bitmap := myImageList.Bitmap(s,imageIndex);
end;

0
另一种方法是将位图添加到TImage的MultiResBitmap中:
var
  sz: TSize;
  bmpSrc, bmpTgt: TBitmap;

...

// Obtain the bitmap (e.g. from ImageList in data-module)
sz := TSize.Create(MaxInt, MaxInt); // Pick best size
DataModule1.ImageList1.BestSize(3, sz);
bmpSrc := DataModule1.ImageList1.Bitmap(sz, 3);

// Assign to Image1, to desired scale
bmpTgt := Image1.MultiResBitmap.Bitmaps[1.0];
bmpTgt.SetSize(bmpSrc.Size);
bmpTgt.Assign(bmpSrc);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接