Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Eine bestimmte Anzahl von RichEdits erzeugen (https://www.delphipraxis.net/62863-eine-bestimmte-anzahl-von-richedits-erzeugen.html)

Christoph 10. Feb 2006 15:29


Eine bestimmte Anzahl von RichEdits erzeugen
 
Hallo,

ich habe in einem array of record verschiedene strings, die ich in RichEdits ausgeben möchte.
StringGrid und DrawGrid kann ich nicht verwenden, da der integer-Wert eines RichEdits z.B. noch per UpDown veränderbar sein soll.

Ich möchte die im array gespeicherte Anzahl der strings in jeweils ein RichEdit ausgeben. Es sollen also bei einer array-Anzahl von 10 Einträgen 10 RichEdits gezeichnet werden usw.

Wie kann ich das umsetzen?

Hier was ich bisher habe:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  i : integer;
  RichEdit: TRichEdit;
begin

  RichEdit := TRichEdit.Create(Form1);

  for i := 0 to High(array) do
  begin

    RichEdit.Parent:=Form1;
    RichEdit.Left := 4;
    RichEdit.Top := 4;
    RichEdit.Height := 20;
    RichEdit.Width := 250;
    RichEdit.Text := array[i].Text;
  end;
end;
Was ich bräuchte wäre eine Art RechtEdit[i], da ich nicht im vorhinein weiß, wie viele Einträge das array hat

Vielen Dank im Voraus.

Grüße,
Christoph

marabu 10. Feb 2006 16:29

Re: Eine bestimmte Anzahl von RichEdits erzeugen
 
Hallo Christoph,

so wie du deine records in einem array verwaltest, kannst du deine RichEdit-Komponenten in einer TObjectList (aber natürlich auch in einem array) verwalten. Wenn du den eigentlichen Hintergrund deines Problems erläuterst, kann man dir vielleicht eine elegantere Lösung aufzeigen.

Grüße vom marabu

inherited 10. Feb 2006 17:25

Re: Eine bestimmte Anzahl von RichEdits erzeugen
 
Es gab in Delphi3 mal die function FindComponent(Name), aber in bds2k6 ging das bei mir nicht mehr

Khabarakh 10. Feb 2006 17:35

Re: Eine bestimmte Anzahl von RichEdits erzeugen
 
Ich würde es zwar begrüßen, wenn es die Methode nicht mehr gäbe, aber sie existiert sicher auch noch in D2006.

Christoph 11. Feb 2006 20:51

Re: Eine bestimmte Anzahl von RichEdits erzeugen
 
Hallo,

danke für Eure Tipps. Werde mal versuchen, meine RichEdits per array zu verwalten (wusste nicht, dass das so ohne weiteres geht).

Danke und Gruß,
Christoph

Steve9825679 11. Feb 2006 22:24

Re: Eine bestimmte Anzahl von RichEdits erzeugen
 
n'Abend!

Hier is a Beispielcode:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var R : array of TRichEdit;
    StrArr : array of String;
    StrAnz : Integer;

    LfVar : Integer;
begin
  StrAnz:=10;
  setlength(StrArr, StrAnz);
  for LfVar:=0 to (high(StrArr)-1) do
    StrArr[LfVar]:='Ich bin String Nummer '+IntToStr(LfVar);

  setlength(R, StrAnz);
  for LfVar:=0 to (high(R)-1) do
  begin
    R[LfVar]:=TRichEdit.Create(nil);
    R[LfVar].Parent:=Self;
    R[LfVar].Name:='RichE'+IntToStr(LfVar);
    R[LfVar].Left:=4+60*LfVar;
    R[LfVar].Top:=40;
    R[LfVar].Width:=55;
    R[LfVar].Height:=60;
    R[LfVar].Text:=StrArr[LfVar];

    R[LfVar].Visible:=true;
    R[LfVar].Invalidate; //zum Neuzeichnen
  end;
  Self.Invalidate;

end;
Liebe Grüße, Stefan


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:18 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