在FireMonkey中创建图像按钮

时间:2014-07-02 03:47:58

标签: delphi firemonkey

适用于XE6,Firemonkey

我正在通过在firemonkey中自定义TSpeedButton来创建一个带有图像的按钮。我这样做是通过在样式编辑器中向TSpeedButton添加图像。新按钮工作正常。我现在想制作另一个图像按钮,所以我想我会复制并粘贴表格上的第一个按钮。我更改了复制按钮中的图像(通过样式编辑器),当我点击应用并关闭时,新按钮获取新图像。但是我也注意到我复制的原始按钮也获得了新图像。所以现在我有两个具有相同图像的按钮。除了创建一个全新的按钮并添加一个新图像(这允许我使用具有独特图像的按钮)之外,有没有办法使用复制/粘贴创建具有自己样式的按钮?

我注意到这个问题与How to edit a control within a FireMonkey style outside of the style designer?有关,但我想在IDE中做同样的事情,而不是以编程方式。

1 个答案:

答案 0 :(得分:5)

他们存在其他方法。这是资源的消费者,但它们可以按照您的意愿工作。

1 - 在表单上删除 TSpeedButton

2 - 在表单上删除 TImage 控件。

3 - 使用结构视图(与表单设计器相反),将Image1组件放在SpeedButton1组件上,使TSpeedButton属于Image1的所有者。

3 - 现在调整Image1的尺寸使其与SpeedButton相同。

4 - 再次在结构视图上,您必须选择Image1并展开它。它似乎是MultiResBitMap拥有的组件。

5 - 展开此组件: MultiResBitmap 。它显示为 TFixedBitmapItem ,名称为“0 - 正常(1,000)。

6 - 在 Object Inpector 上点击其属性Bitmap的(...)。

现在,您可以根据“速度”按钮复制此结构,并更改每个结构的位图!

7 - 提示!!!您必须将图像的HitTest设置为False,,并将按钮的相同属性设置为True。在其他情况下,它们看起来似乎是SpeedButton的事件处理程序不会触发。