如何为FireMonkey组件添加设计时图标?

Alb*_*ola 6 delphi firemonkey delphi-10.2-tokyo

我已经阅读了PawełGłowacki的这篇文章,我已经能够为我的组件显示一个图标.结果如下:

在此输入图像描述

我可以在工具选项板和结构视图中看到图像.顺便说一下,在设计器中我看到了默认图标:

在此输入图像描述

如何在设计器中显示组件的图标?


我正在使用Delphi Tokyo 10.2 Update 2.我已经按照我链接的文章来显示图像.我的组件如下:

type
  TEquationSolver = class(TComponent)
    //code...
  end;
Run Code Online (Sandbox Code Playgroud)

基本上,我做了以下事情:

  1. 我创建了3个位图(16x16 24x24 32x32)和一个png(128x128)
  2. 我已将它们作为资源添加到Project> Resources and Images中 在此输入图像描述
  3. TEquationSolver用后缀表示它们的大小.通过这种方式,它们可以正确显示在IDE上.

我在设计时间部分缺少什么?在文章中,我已经阅读以下内容:

我们的指南是:如果您想要非常简单的向后兼容性或小文件(BPL)大小,请使用PNG; 如果要快速加载,请使用位图.我们使用位图为16,24和32px图标,PNG用于128px图标.

实际上我有16x16,24x24,32x32位图和128px png.还有别的吗?

Alb*_*ola 5

您似乎必须创建我上面显示的文件以及 Designer的图像.后者需要匹配继承的类的名称TComponent(在我的例子中):

在此输入图像描述

正如你所看到的,我已经添加了另一个位图(它是32x32,我刚刚复制并更改了名称)并且我已经使用TEquationSolver了名称.构建+安装后,我得到以下结果:

在此输入图像描述


请注意,我本可以仅添加logo.bmp为资源(具有与TComponent派生的类名称匹配的ID),并且无论如何它都会起作用.问题是图片不会整洁,因为它们会被调整大小并且它们可能看起来很模糊,就像我的情况一样.

出于这个原因,我认为这很好:

  1. 放置将出现在表单设计器中的图像
  2. 放置将由IDE使用的16x16,24x24,32x32和128x128

在我的情况下,差异很明显.当我只有一个位图时,图像的质量很低,但是当我提供各种尺寸时,它们看起来更好.