AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Positionierung von Objekten / Grid?

Ein Thema von Cosamia · begonnen am 13. Feb 2009 · letzter Beitrag vom 13. Feb 2009
Antwort Antwort
Benutzerbild von Cosamia
Cosamia

Registriert seit: 27. Feb 2007
Ort: Emmendingen
221 Beiträge
 
Delphi 2007 Professional
 
#1

Positionierung von Objekten / Grid?

  Alt 13. Feb 2009, 13:27
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
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.746 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Positionierung von Objekten / Grid?

  Alt 13. Feb 2009, 14:25
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.
Uli Gerhardt
  Mit Zitat antworten Zitat
Benutzerbild von Cosamia
Cosamia

Registriert seit: 27. Feb 2007
Ort: Emmendingen
221 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Positionierung von Objekten / Grid?

  Alt 13. Feb 2009, 14:27
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.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#4

Re: Positionierung von Objekten / Grid?

  Alt 13. Feb 2009, 14:28
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.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von Cosamia
Cosamia

Registriert seit: 27. Feb 2007
Ort: Emmendingen
221 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Positionierung von Objekten / Grid?

  Alt 13. Feb 2009, 14:29
Zitat von himitsu:
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.
Ich denke eher darüber nach es in Row´s und Col´s zu definieren.
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.746 Beiträge
 
Delphi 2007 Professional
 
#6

Re: Positionierung von Objekten / Grid?

  Alt 13. Feb 2009, 14:38
Zitat von Cosamia:
Ich denke eher darüber nach es in Row´s und Col´s zu definieren.
Sowas?
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.
Uli Gerhardt
  Mit Zitat antworten Zitat
Benutzerbild von Cosamia
Cosamia

Registriert seit: 27. Feb 2007
Ort: Emmendingen
221 Beiträge
 
Delphi 2007 Professional
 
#7

Re: Positionierung von Objekten / Grid?

  Alt 13. Feb 2009, 14:49
Zitat von uligerhardt:
Zitat von Cosamia:
Ich denke eher darüber nach es in Row´s und Col´s zu definieren.
Sowas?
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.
So ähnlich, nur das ich z.B. sicher Stellen muss, dass egal wieviel Row´s ich habe, EDIT2 und EDIT7 untereinander stehen.
  Mit Zitat antworten Zitat
Benutzerbild von Cosamia
Cosamia

Registriert seit: 27. Feb 2007
Ort: Emmendingen
221 Beiträge
 
Delphi 2007 Professional
 
#8

Re: Positionierung von Objekten / Grid?

  Alt 13. Feb 2009, 16:01
ich habe es jetzt wie folgt gelöst:

Delphi-Quellcode:
NewPanel := TJvPanel.Create(BOT_BEST_PANEL);
      with NewPanel do begin
        BoundsRect := StringGrid1.CellRect(mydata[n].row,mydata[n].col);
DANKE.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz