From all I can find the following should work:
procedure TForm1.CreateItemButtons();
var
i: Integer;
begin
for i := 1 to 12 do begin
ItemButton := TSpeedButton.Create(Application);
with ItemButton do begin
Parent := ToolBar1;
Caption := IntToStr(i); Top := 2; Height := 22; Width := 30;
Left := 173+(i+1)*Width;
GroupIndex := 1;
OnClick := @ToolbarItemsHandler;
end;
end;
end;
procedure TForm1.ToolbarItemsHandler();
var
i, Item: Integer;
begin
for i := 1 to 12 do begin
if ItemButton.Down = True then begin
Item := i;
ShowMessage('Item '+IntToStr(Item)+' selected.');
end;
end;
end;
However, I get the following compile error:
main.pas(133,26) Error: Incompatible types: got "<procedure variable type of procedure of object;Register>" expected "<procedure variable type of procedure(TObject) of object;Register>"
What am I doing wrong?