【发布时间】:2019-08-15 15:16:13
【问题描述】:
在我的程序中,SpeenButton 的图像由 imagelist 设置。当我单击速度按钮时,我需要用图像列表中的另一个图像更改图像。我该怎么做?
【问题讨论】:
-
VCL 还是 FMX?他们都有一个
TSpeedButton,它们彼此非常不同。 VCL 有一个Glyph属性,FMX 有Images和ImageIndex属性 -
如果是 VCL,类似于
MyImageList.GetBitmap(..., MySpeedButton.Glyph)IIRC。 -
我通常建议人们不要使用速度按钮,因为它们不是窗口控件。因此他们无法接收键盘焦点。因此,对于像我这样的键盘优先用户来说,它们变得更加难以使用:我无法将我的标签转到它们并使用 Enter 或 Space 激活它们。另外,我认为他们没有
Default或Cancel属性。但是,您可以为他们提供加速器(如'&New hippogriff'),因此如果适用,我建议您这样做。否则,请确保您的 GUI 可以方便地仅通过键盘以其他方式使用。
标签: delphi timagelist