如何设置 TSpeedButton(在 TToolbar 上)看起来被按下?它仅在单击时突出显示,但在鼠标离开时恢复正常。我将属性 Stayspressed 设置为 True,实际上属性 IsPressed 变为并保持为 True,但此状态不可见。
问问题
2375 次
2 回答
3
你用的是什么风格?一些包含的没有包含所有的效果。
首先,恢复为 windows 样式。如果可行,那么这绝对是样式问题,而不是代码问题。
如果您想为另一种样式添加效果(实际上是动画):
- 右键单击按钮并选择编辑默认样式。
- 找到要显示动画的 Rectangle 的 Fill.Color 属性。
- 单击动画图标并添加 TColorAnimation
- 设置:StartValue(现有值)。
- 停止值
触发器:IsPressed=True
重复上述操作以添加第二个动画,其中 Start 和 StopValues 反转并且 IsPressed=False 的 Trigger
于 2012-05-31T14:16:43.703 回答
0
这是一个艰难的 - 标准 TButton 样式包括有效的效果 - 当“IsPressed”为真时,按钮将看起来被按下。但是,其他样式(尤其是您自己的样式)可能会出现更多问题。我发现最好的解决方案是拥有 2 种样式并在按下按钮时更改样式。
我发现几乎不可能让“鼠标悬停”动画与按钮中的“按下”动画一起使用——通常你想在鼠标经过时稍微突出显示按钮,然后在按下时添加效果——尤其是当你不想要的时候默认阴影效果,但颜色效果(我更喜欢,我不喜欢默认按钮按下的内部阴影效果),但我似乎总是遇到问题。任何一种效果都不会触发,或者按钮状态不会返回到您所期望的状态(我的意思是视觉上)。
我的建议 - 添加一些额外的代码来更改按下按钮的样式,否则你可能会发疯:-)
于 2012-06-11T12:24:56.463 回答