SpeedButton реализуется для кнопок с фиксацией. На ней могут быть отображены пиктограммы, ее поведение похоже на обычную кнопку либо на кнопку с фиксацией нажатого состояния. Свойство Caption – надпись (пусто), так как вместо надписи используется пиктограмма. Свойство Glyph задает изображение, а NumGlyph определяет количество используемых пиктограмм. Свойство Layout и Margin задают расположение изображения. Spacing – расстояние между надписью и изображением.
Самая главная особенность этик кнопок это состояния – отжатое и исходное. Задается свойством GroupIndex (AllowAllAp – отжатое состояние и Down – нажатое). Для того, чтобы кнопка осталась погруженной в нажатом состоянии нужно к примеру задать GroupIndex > 0 и AllowAllUp = true. При повторном нажатии на кнопку, она освобождается и переходит в нормальное состояние.
Состояние кнопки при выполнении определяется значением свойства Down (true – кнопка нажата). При событии OnClick значение Down уже равно состоянию, которое примет кнопка при нажатии на ней.