Firemonkey SpeedButton / Button

时间:2017-04-22 01:12:54

标签: delphi firemonkey delphi-xe firemonkey-style

在Firemonkey中,使按钮看起来如下所示的“魔力”是什么?

enter image description here

对我来说,最重要的是图像的大小和按钮内文本的布局,但是如何在firemonkey中执行此操作?我必须具备哪些属性?在VCL中这很容易。

我在VCL和Firemonkey中使用了speedbutton和imagelist。

我遇到这样简单的问题:(

我甚至没想到什么时候我必须在firemonkey做一些更复杂的事情,几乎回到VCL,Sad。

感谢。

3 个答案:

答案 0 :(得分:2)

Firemonkey有一个很棒的内置样式系统,甚至还有一个样式系统,它与普通的Firemonkey或VCL Form-Designer完全一样。

每个Component都有自己的样式,在TStyleBook组件中定义。 我建议你,只需将组件列表中的TStyleBook添加到表单中,然后双击它。 Delphi / RAD Studio将打开“样式设计器”,您可以在其中为所需的每个组件设置默认样式。您还可以为同一组件定义自定义样式,这样您就可以使用常规TSpeedButton和自定义样式,其中包括额外的TImage。要为TSpeedButton创建自定义样式,只需将TSpeedButton放到表单上,然后在其上按鼠标右键,然后按“编辑自定义样式”之类的内容。 (我的RAD Studio不是英文版)

要了解如何制作出色的视觉和自定义样式,您应该在Emba的文档中了解它。您可以在此处找到它们:http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Customizing_FireMonkey_Applications_with_Styles(另请查看以下链接)

当然,学习它的最好方法就是潜入它。这一点都不难。 ;)

答案 1 :(得分:2)

正如Rohit所说,最好的方法是在你的按钮附近使用一个TImage,然后使用Structure树视图在你的按钮下拖动TImage。将TImage的HitTest设置为false,并与客户端对齐。您的按钮总是48x48,因此您可以在TImage的MultiResBitmap下单击添加项目后使用位图按钮加载图像(让我们说它是512x512)。

Structure View

请注意,如果您想让图片透明,我在http://www166.lunapic.com找到了一个名为Lunapic的精彩在线编辑器。

答案 2 :(得分:1)

除了其他答案,我建议你为每种视觉组件使用TRectangle。您可以使用TRectangle,TImage和TLabel一起创建新的自定义组件。或者您可以在每个组件中一起使用它们。

使用TRectangle,您可以管理半径,角落,笔划,背景颜色等。您唯一需要知道的是确保您的TRectangle组件' HitTest参数是活动的,内部组件是' (TImage和TLabel)参数无效。