was spricht bittesehr dagegen, bei allen den groupindex auf 0 zu lassen?
(merke: groupindex = 0 ^= nicht zu einer group gehörend)
Ansonsten mal ein kleines beispiel, wie man ein 2d-Feld aus SpeedButtons zur laufzeit generiert:
Delphi-Quellcode:
type TButtons = array of TSpeedButton;
type TMetrics = record Top,Left,Width,Height:integer; end;
procedure MakeButtons(Count: Integer; Owner: TControl; Metrics: TMetrics; numCols: Integer; out Buttons: TButtons);
var Col,Row: Integer;
begin
setlength(Buttons,Count);
col := 0;
row := 0;
for i := 0 to Count -1 do
begin
Buttons[i] := TSpeedButton.Create(Owner);
Buttons[i].Top := row * Metrics.Height + Metrics.Top;
Buttons[i].Left := col * Metrics.Width + Metrics.Left;
Buttons[i].Width := Metrics.Width;
Buttons[i].Height := Metrics.Height;
//Für dieses Mal: Eindeutigen GroupIndex vergeben
Buttons[i].GroupIndex := i;
// Positionen überprüfen
Col := Col + 1;
if Col > numCols then
begin
Col := 0;
Row := Row + 1;
end;
end;
end;
Ungetestet. Aber ich glaub fast, das muss jetzt in die CodeLib.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1