![]() |
Positionierung von Objekten / Grid?
Hallo,
ich bin gerade am Planen meines neuen Projekts, welches eine dynamische Anzahl von Edit Feldern und SpinButtons benötigt, welche auf dem Formular in strukturierter Form dargestellt werden sollen. Gewisse Edits müssen aber unabhängig von der Anzahl der gesamten Edit Feldern immer untereinänder oder nebeneinander stehen. Jemand ein Tip wie soetwas zu lösen sein mag? Alles in einem Grid positionieren? Danke |
Re: Positionierung von Objekten / Grid?
Du hast dein Anliegen etwas vage formuliert, so dass man nichts Genaues dazu sagen kann. Aber beim Stichwort "dynamische Anzahl" kommt mir der Gedanke, die Controls nicht per Formdesigner, sondern im Quellcode zu erzeugen. Oder zumindest das Layout im Quellcode zu erledigen.
Uli. |
Re: Positionierung von Objekten / Grid?
Sorry, für die ungenauen Angaben.
Die Edit´s und Button´s werden über eine ObjectList per Laufzeit erzeugt. Mit fehlt die Idee, wie ich die erzeugten Objekte in einer strukturierten Form anzeigen lassen kann. |
Re: Positionierung von Objekten / Grid?
Also du meinst dieses in diesen GidPanles oder so, automatisch ausrichten lassen?
Wenn etwas zusammengehört, könntest du diese je in einem TPanel (ohne Ramen) zusammenfassen. |
Re: Positionierung von Objekten / Grid?
Zitat:
|
Re: Positionierung von Objekten / Grid?
Zitat:
Delphi-Quellcode:
unit EditRaster;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; const cEditCount = 13; cRowCount = 3; type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private FEdits: array[0..Pred(cEditCount)] of TEdit; public { Public-Deklarationen } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); var i: Integer; x, y: Integer; ed: TEdit; begin x := 8; y := 8; for i := 0 to Pred(cEditCount) do begin ed := TEdit.Create(Self); ed.Name := 'Edit' + IntToStr(i); ed.Parent := Self; ed.SetBounds(x, y, ed.Width, ed.Height); if Succ(i) mod cRowCount = 0 then begin x := 8; Inc(y, ed.Height + 8); end else Inc(x, ed.Width + 8); FEdits[i] := ed; end; end; end. |
Re: Positionierung von Objekten / Grid?
Zitat:
|
Re: Positionierung von Objekten / Grid?
ich habe es jetzt wie folgt gelöst:
Delphi-Quellcode:
DANKE. :thumb:
NewPanel := TJvPanel.Create(BOT_BEST_PANEL);
with NewPanel do begin BoundsRect := StringGrid1.CellRect(mydata[n].row,mydata[n].col); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:13 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