![]() |
Re: verschiedene groubindex-eigenschaften automatisch einste
Sorry, aber von welchem Code genau sprichst du denn gerade? :wink:
|
Re: verschiedene groubindex-eigenschaften automatisch einste
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:
Ungetestet. Aber ich glaub fast, das muss jetzt in die CodeLib.
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; |
Re: verschiedene groubindex-eigenschaften automatisch einste
[quote="DGL-luke"]was spricht bittesehr dagegen, bei allen den groupindex auf 0 zu lassen?
(merke: groupindex = 0 ^= nicht zu einer group gehörend) [/delphi] Dagegen spricht die Eigenschaft down. Wie gesagt ich weiß nicht genau was für ein Spiel das wird, aber wenn jmd. SpeedButtons nimmt, dann spricht einiges dafür, dass man einige gedrückt lässt und andere nicht. Alle Speedbuttons mit gleichem Groupindex gehören zu einer Gruppe (wär hätte das gedacht) und in jeder Gruppe ist immer max. ein Button Down. Also führt nichts an eigene einzigartige GroupIndizes vorbei Gruß Der Unwissende |
Re: verschiedene groubindex-eigenschaften automatisch einste
*ausprobieren muss*
tatsächlich... na das ja mal n designfehler der übelsten Sorte. was solls, hoffe mein code funktioniert. |
Re: verschiedene groubindex-eigenschaften automatisch einste
:gruebel:
Warum nicht ganz einfach so:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var i: integer; begin for i := 0 to Pred(ComponentCount) do begin if (Components[i] is TSpeedButton) then begin (Components[i] as TSpeedButton).GroupIndex := i + 1; end; end; end; |
Re: verschiedene groubindex-eigenschaften automatisch einste
Zitat:
Delphi-Quellcode:
schon ausreichen würde :wink:
procedure TForm1.FormCreate(Sender: TObject);
var i: integer; begin for i := 0 to Pred(ControlCount) do begin if (Controls[i] is TSpeedButton) then begin (Controls[i] as TSpeedButton).GroupIndex := i + 1; end; end; end; Aber wenn es ein Spiel wird, dass eine Art Minesweeper ist, hm, 100+ Buttons per Hand setzen? Viel Spaß. |
Re: verschiedene groubindex-eigenschaften automatisch einste
Hai Unwissender,
was möchtest Du uns mit deinem Posting denn sagen? P.S.: ICH würde die Buttons sicher auch zur Laufzeit erzeugen. Aber die Frage war ja wie man den Grouindex der Buttons setzt ;-) |
Re: verschiedene groubindex-eigenschaften automatisch einste
Ich wollte nur sagen, dass Controls es auch tun, du hast Components verwendet. :wink:
Und du hast recht, bin ich wohl etwas OT mit meinen anderen Antworten. |
Re: verschiedene groubindex-eigenschaften automatisch einste
Zitat:
|
Re: verschiedene groubindex-eigenschaften automatisch einste
Zitat:
(tut mir leid. war irgendwie nen fehler so das er mir zuerst meinen beitrag nicht angezeigt hat und ich dachte ich hätte ihn nicht abgeschickt). :gruebel: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz