![]() |
Memo-Feld auslesen
Hallo,
folgende Problematik: Aus 10 Memo-Feldern sollen jeweils die ersten 3 Zeilen ausgelesen und in ein (zweidimensionales) Array gespeichert werden. Wie kann ich das am besten realisieren? |
Re: Memo-Feld auslesen
In welcher Reihenfolge sollen die denn da rein geschrieben werden? Und wie soll das mit dem Zweidimensionalen Array gelößt werden? Welche Felde sollen in welchen Platz des Arrays geschrieben werden?
|
Re: Memo-Feld auslesen
Also z.B. wir haben ein Array[1..10,1..3] of string und 10 Memo-Felder mit jeweils mehreren Zeilen Text.
Nun sollen von den Memo-Feldern jeweils die ersten 3 Zeilen Text Zeile für Zeile in das Array übertragen werden. Die erste Dimension des Arrays steht dabei für das Memo-Feld, die zweit für die Zeile. Ich hoffe, ich habs es jetzt etwas besser erläutern können. |
Re: Memo-Feld auslesen
Hi,
Mal angenommen deine Memos heißen Memo1 bis Memo 10. Zu Testzwecken hier das Array als lokale Variable. (ungetestet)
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i,j: Integer; arr: array[1..10,1..3] of String; aMemo: TMemo; begin for i:=1 to 10 do begin aMemo := FindComponent('Memo'+IntToStr(i)) as TMemo; If aMemo <> nil then for j:=1 to 3 do If aMemo.Lines.Count>=j then arr[i,j] := aMemo.Lines[j-1] else arr[i,j]:=''; end; end; |
Re: Memo-Feld auslesen
Delphi-Quellcode:
So müßte es gehen.
procedure TForm1.Button1Click(Sender: TObject);
var x : array[1..10,1..3] of string; i1,i2 : integer; begin for i1 := 1 to 10 do for i2 := 0 to 2 do x[i1,i2] := TMemo(FindComponent('memo' + IntToStr(i1))).Lines[i2]; end; [edit]Mist schon wieder zu langsam.[/edit] |
Re: Memo-Feld auslesen
Danke, scheint zu klappen :-D :-D :-D
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:56 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