The cause is line 1399 in sSpeedButton.pas (v9.01)
Code:
procedure TsSpeedButton.ActionChanged(Sender: TObject);
…
Images := TCustomAction(Sender).ActionList.Images;
…
end;
The ImageList of the SpeedButton is set to the Images of the ActionList. In my case, the Images property of the ActionList is empty. Reason: I have two collections of speedbuttons: with 16×16 icons, and with 32×32 icons. Both take their actions from the same actionlist.
Whether I'm at fault here for not splitting my action lists, I don't know…