在Android上更改Firemonkey按钮按下颜色的简便方法

时间:2015-04-21 16:24:57

标签: android delphi button firemonkey delphi-xe7

这可能是那些前额拍打问题之一,但我想要做的是按下它们时按钮显示橙色(xFFFCB447),就像Android对话框一样。 (例如,选择列表)

在默认样式中似乎没有特定的“按下”TRectangle,并且我添加了不同的TRectangles(适当地着色似乎也没有这样做),所以我唯一的选择似乎是使用Bitmap样式设计师导出style.png;希望我找出明天下午之前按下按钮的图像部分,并再次更新图像。

有没有更简单/更快捷的方法呢?

1 个答案:

答案 0 :(得分:2)

选项A)在按钮上放置一个TRectangle。设置它与内容对齐。将其填充颜色设置为橙色。将它的不透明度设置为0.50。将它的HitTest设置为False。将其设为可见为假。在TButton.OnMouseDown中,将TRectangle Visible设置为True。在TButton.OnMouseUp中,将TRectangle Visible设置为False。您还需要设置TButton所在的控件的OnMouseMove以将TRectangle Visible设置为False,因此如果您向下鼠标然后移开它也将被隐藏。

选项B)在TButton上删除TFillRGBEffect。将其设置为橙色。与上面相同,启用和禁用鼠标按下和向上的效果。但是,请注意TFillRGBEffect可能比TRectangle方式慢。

选项C)只需使用TRectangle而不是TButton。将TText或TLabel放入其中以获取文本并与内容对齐。在OnMouseDown和OnMouseUp中更改它的填充颜色。