AGB  ·  Datenschutz  ·  Impressum  







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

RichEdit.Lines in Array/Variable

Ein Thema von StanY · begonnen am 4. Okt 2004 · letzter Beitrag vom 4. Okt 2004
Antwort Antwort
StanY

Registriert seit: 5. Aug 2004
145 Beiträge
 
#1

RichEdit.Lines in Array/Variable

  Alt 4. Okt 2004, 16:37
Ich habe auf meiner Form (Form1) eine RichEdit (RichEdit1) Komponente.

Den Inhalt müsste ich nun in eine Variable/ein Array speichern und abrufen können, nur leider will das nicht so recht \:.

Versucht habe ich schon:
Delphi-Quellcode:
var
  tVar: TStrings;
begin
  tVar := RichtEdit1.Lines
end;
Das ist zwar ohne weiteres Möglich, allerdings scheint es nicht wirklich gespeichert zu sein, denn bei:
Delphi-Quellcode:
var
  tVar: TStrings;
begin
  RichEdit1.Lines := tVar;
end
Passiert gar nichts. \:

Dann geht es auch nicht, die Variable in ein Array zu speichern:
Delphi-Quellcode:
var
  tArray: Array of String;
  i: Integer;
begin
  SetLength(tArray,RichEdit1.Lines.Count);
  for i := 0 to RichEdit1.Lines.Count do begin
    tArrray[i] := RichEdit1.Lines.Strings[i];
  end;
end;
denn da gibt es ein 'Acces violation bla' zur Laufzeit.

Den Inhalt des RichEdit in ein Array zu speichern und es dann Zeilenweise auszulesen und in RichEdit1.Lines.Strings[i] zu packen, funktioniert auch nicht.

Wie ist das nun möglich? So schwer kann das ja nicht sein...

(Btw. die Variablen, die ich hier gesetzt hab sind im eigentlichen Programm private Variablen)

Vielen Dank schonmal im Vorraus.
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: RichEdit.Lines in Array/Variable

  Alt 4. Okt 2004, 16:42
Delphi-Quellcode:
var
  tArray: Array of String;
  i: Integer;
begin
  SetLength(tArray,RichEdit1.Lines.Count);
  for i := 0 to RichEdit1.Lines.Count do begin // <== Fehler
    tArrray[i] := RichEdit1.Lines.Strings[i];
  end;
end;
Richtig wäre:

for i := 0 to RichEdit1.Lines.Count - 1 do
Edit: Tags korrigiert
  Mit Zitat antworten Zitat
StanY

Registriert seit: 5. Aug 2004
145 Beiträge
 
#3

Re: RichEdit.Lines in Array/Variable

  Alt 4. Okt 2004, 17:48
Delphi-Quellcode:
var
  i: Integer;
begin
  for i := 0 to Length(SFile[Num].Source)-1 do begin
    redSource.Lines.Strings[i] := SFile[Num].Source[i];
    ShowMessage(SFile[Num].Source[i]);
  end;
end;
Danke schonmal... (:

Aber, hier noch eine Frage:
Er fügt bei diesem Teil lediglich eine Zeile Zeile zu redSource (RichEdit) hinzu.

Mit ShowMEssage zeigt er aber alle Zeilen an... Warum? ^^

Also, z.b.

ShowMessage gibt hintereinander aus:
'bla erste zeile'
'bla zweite zeile'

aber in dem RichEdit-Ding steht halt nur
'bla erste zeile'

Warum? ^^
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: RichEdit.Lines in Array/Variable

  Alt 4. Okt 2004, 17:51
Du müsstest so für jede zeile ein extra Dialog bekommen (er wird in der Schleife aufgerufen).
  Mit Zitat antworten Zitat
StanY

Registriert seit: 5. Aug 2004
145 Beiträge
 
#5

Re: RichEdit.Lines in Array/Variable

  Alt 4. Okt 2004, 17:54
Zitat von Matze:
Du müsstest so für jede zeile ein extra Dialog bekommen (er wird in der Schleife aufgerufen).
Wenn du den ShowMessage Dialog meinst: ja.

Nur warum steht es dann nicht richtig in dem Rich-Edit-Textfeld? oO
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: RichEdit.Lines in Array/Variable

  Alt 4. Okt 2004, 18:00
Versuche mal mit Lines.Add('...') die zeile hinzuzufügen, ich weiß nicht, ob es sonst geht, wenn die zeilen nicht vorhanden sind.
  Mit Zitat antworten Zitat
StanY

Registriert seit: 5. Aug 2004
145 Beiträge
 
#7

Re: RichEdit.Lines in Array/Variable

  Alt 4. Okt 2004, 18:04
Das geht. Danke. (:

Da hätte ich aber auch drauf kommen können ^^
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8

Re: RichEdit.Lines in Array/Variable

  Alt 4. Okt 2004, 18:05
Delphi-Referenz durchsuchenTStrings ist nur eine abstrakte Klasse ohne implementation der Methode / Eigenschaften. Sie dient nur als Grundgerürt zum Ableiten von anderen Klassen. Nimm Delphi-Referenz durchsuchenTStringlist und es sollte klappen. Allerdings solltest du vorher auch noch eine Instanz der Klasse mit Delphi-Referenz durchsuchenCreate erzeugen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
StanY

Registriert seit: 5. Aug 2004
145 Beiträge
 
#9

Re: RichEdit.Lines in Array/Variable

  Alt 4. Okt 2004, 19:01
Zitat von Luckie:
Delphi-Referenz durchsuchenTStrings ist nur eine abstrakte Klasse ohne implementation der Methode / Eigenschaften. Sie dient nur als Grundgerürt zum Ableiten von anderen Klassen. Nimm Delphi-Referenz durchsuchenTStringlist und es sollte klappen. Allerdings solltest du vorher auch noch eine Instanz der Klasse mit Delphi-Referenz durchsuchenCreate erzeugen.
Nun belasse ich das bei der Methode, aber danke.

Werde das wohl sicher bei dem IRC clienten verwenden (:
  Mit Zitat antworten Zitat
bigg
(Gast)

n/a Beiträge
 
#10

Re: RichEdit.Lines in Array/Variable

  Alt 4. Okt 2004, 19:15
mit einer stringlist kann man sich aber einiges an quellcode sparen.

Code:
List.Text := Richedit.Lines.Text;
  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 02:21 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