TMemo in TIniFile übertragen

Rund um die LCL und andere Komponenten
Antworten
Maik81ftl
Beiträge: 619
Registriert: Mi 9. Mär 2011, 16:34
OS, Lazarus, FPC: Ubuntu10.04 LTS (L 0.9.31.0 FPC 2.4.4)
CPU-Target: 64Bit
Wohnort: seit 01.06.2011 in Wahlstedt

TMemo in TIniFile übertragen

Beitrag von Maik81ftl »

Moin Moin,

Hab irgendwie gerade eine Denkfehler bzw. eine Blockade.

habe im Akuellen Projekt eine Vorhandene File, welche nun durch die Informationen, welche in einer TStringList stehen nachgetragen werden sollen.

Da dieses Feld (Memoxy) in dem Moment gerade Leer sind, wollte ich dies mit folgenden functionen

Code: Alles auswählen

procedure Item2Form(Item: TItem);
  var a: Byte;
  begin
    Form2.HasRegel.Checked := Item.HasRegel;
    Form2.Staerke.ItemIndex := Form2.Staerke.Items.IndexOf(Item.Staerke);
    Form2.Schmerz.ItemIndex := Form2.Schmerz.Items.IndexOf(Item.Schmerz);
    Form2.Medizin.Text := Item.Medizin;
    Form2.Dosis.Text := Item.Dosis;
    Form2.Caption:= IntToStr(Item.Bemerkung.Count);
    if Item.Bemerkung[0]  = '' then
      Form2.Memo1.Lines.Add('Keine')
    else
      Form2.Memo1.Lines.AddStrings(Item.Bemerkung);
  end;
  procedure Form2Item(var Item: TItem);
  begin
    Item.HasRegel := Form2.HasRegel.Checked;
    Item.Staerke := Form2.Staerke.Items[Form2.Staerke.ItemIndex];
    Item.Schmerz := Form2.Schmerz.Items[Form2.Schmerz.ItemIndex];
    Item.Medizin := Form2.Medizin.Text;
    Item.Dosis := Form2.Dosis.Text;
    if Form2.Memo1.Lines[0] <> '' then
      Item.Bemerkung.AddStrings(Form2.Memo1.Lines)
    else
      Item.Bemerkung.Add('Keine');
  end;
um einen Besser verständlichen wert ausstocken.

Soweit macht der erst mal das, was er soll.

Wenn ich jedoch z.B. der Zelle mit dem Heutigen Datum einen Bemerkung (ü 3 Zeilen) hinzufügen will, erhalte ich den Fehler
-1 out off Bounds
könnt ihr euch das erklären?
Ubuntu 10.04 LTS ist meine Heimat. Lazarus ist meine Sprache :D und der Kreis Segeberg meine LIEBE :D

DiBo33
Beiträge: 334
Registriert: Do 11. Okt 2007, 18:01

Re: TMemo in TIniFile übertragen

Beitrag von DiBo33 »

Code: Alles auswählen

if Form2.Memo1.Lines[0] <> '' then
Wenn das Memo leer ist hast du kein Lines[0] zur Verfügung, checke mit Form2.Memo1.Lines.Count die Anzahl.

Maik81ftl
Beiträge: 619
Registriert: Mi 9. Mär 2011, 16:34
OS, Lazarus, FPC: Ubuntu10.04 LTS (L 0.9.31.0 FPC 2.4.4)
CPU-Target: 64Bit
Wohnort: seit 01.06.2011 in Wahlstedt

Re: TMemo in TIniFile übertragen

Beitrag von Maik81ftl »

DiBo33 hat geschrieben:

Code: Alles auswählen

if Form2.Memo1.Lines[0] <> '' then
Wenn das Memo leer ist hast du kein Lines[0] zur Verfügung, checke mit Form2.Memo1.Lines.Count die Anzahl.
Hab mit aus dem grund schon mal den wert anzeigen lassen und wieder erwartend bekam ich den Wert 0 zurück.
Ubuntu 10.04 LTS ist meine Heimat. Lazarus ist meine Sprache :D und der Kreis Segeberg meine LIEBE :D

Antworten