首页 > 解决方案 > 在Delphi中使用TImage组件将文件中的链接缩略图绘制成形状

问题描述

我正在尝试将运行时在圆形中创建的图像的缩略图链接到 Firemonkey 应用程序的 timage 组件,知道如何显示在形状上选择的图像吗?

标签: delphifiremonkeypascal

解决方案


下面是在运行时创建一个 TImageControl 的代码,用一个图像加载它并将它的中心放在一个 TCircle 形状上:

    procedure TForm1.Button1Click(Sender: TObject);
var
    ImageControl : TImageControl;
    Previous     : TComponent;
begin
    Previous := FindComponent(Circle1.Name + '_ThumbImage');
    if Previous is TImageControl then
        ImageControl := TImageControl(Previous)
    else begin
        ImageControl              := TImageControl.Create(Self);
        ImageControl.Name         := Circle1.Name + '_ThumbImage';
        ImageControl.Size.Width   := Circle1.Size.Width / 2;
        ImageControl.Size.Height  := Circle1.Size.Height / 2;
        ImageControl.Parent       := Circle1;
        ImageControl.Position.X   := (Circle1.Size.Width - ImageControl.Size.Width) / 2;
        ImageControl.Position.Y   := (Circle1.Size.Height - ImageControl.Size.Height) / 2;
        ImageControl.Visible      := TRUE;
    end;
    ImageControl.Bitmap.LoadFromFile('MyThumbnail.jpg');
end;

当然,您可以加载您创建的缩略图,而不是从文件中加载图像。你没有说你的缩略图存储在哪里,所以我认为它在一个文件中......


推荐阅读