Seite 1 von 1

LinkedList und ListconGadget

Verfasst: 15.11.2004 09:31
von Pelagio
:oops: Guten Morgen,

und schon ist ein Problem bei mir aufgetreten welches ich nicht zu lösen vermag.
Ich hoffe daher das jemand die Lösung mir mitteilen kann.
Ich lade Daten aus einer Datei in ein ListIconGadget was auch, allerdings nur bei Programmstart, funktioniert.
Wenn ich das Programm laufen habe und will die Daten neu laden ( Bspw. bei einer Änderung der Datendatei)
so wird zwar die erste Spalte gefüllt aber alle anderen Spalten bleiben leer, warum?

Code: Alles auswählen

Procedure LoadDaten()
   Protected Value.s
   
   If ReadFile(0, "Daten.dat")
      If CountGadgetItems(#GADGET_ListIcon) 
         ClearList(Daten())
         ClearGadgetItemList(#GADGET_ListIconGadget)
      EndIf 
  
      While (Eof(0) = #FALSE)
         Value =  Trim(ReadString())
         AddElement(Daten())
         Daten()\Item1 = StringField(Value, 1, ";")
         Daten()\Item2 = StringField(Value, 2, ";")
         Daten()\Item3 = StringField(Value, 3, ";")
         Daten()\Item4 = StringField(Value, 4, ";")
         Daten()\Item5 = StringField(Value, 5, ";")
         Daten()\Item6 = StringField(Value, 6, ";")
         Value =  ReplaceString(Value, ";", Chr(#Asci_LF))
         AddGadgetItem(#GADGET_ListIconGadget, ListIndex(Daten()), Value)
     Wend   
     CloseFile(0)   
   EndIf

EndProcedure
:oops:

Re: LinkedList und ListconGadget

Verfasst: 15.11.2004 12:03
von Kiffi
Hallo Pelagio,

1. Du füllst zwar die Linkedlist, aber benutzt zum Füllen des
ListIconGadget() trotzdem wieder Deinen Value-String

2. Die Konstante #Asci_LF ist meinem Compiler unbekannt.
Verwende mal Chr(#LF).

Code: Alles auswählen

Procedure LoadDaten()
   Protected Value.s
   
   If ReadFile(0, "Daten.dat")
      If CountGadgetItems(#GADGET_ListIcon) 
         ClearList(Daten())
         ClearGadgetItemList(#GADGET_ListIconGadget)
      EndIf 
  
    While (Eof(0) = #False)
      Value =  Trim(ReadString())
      Value =  ReplaceString(Value, ";", Chr(#LF))
      AddGadgetItem(#GADGET_ListIconGadget, -1, Value)
    Wend   

     CloseFile(0)   
   EndIf

EndProcedure
3. Wenn Du die LinkedList dennoch benötigst. dann musst Du alle Items
Deines aktuellen Eintrages mit Chr(#LF) verknüpfen und dann in das
ListIconGadget eintragen:

Code: Alles auswählen

MyNewValue = Daten()\Item1 + Chr(#LF) + Daten()\Item2 ...
AddGadgetItem(#GADGET_ListIconGadget, -1, MyNewValue)
Grüße ... Kiffi

Re: LinkedList und ListconGadget

Verfasst: 15.11.2004 18:03
von Lars
Kiffi hat geschrieben:Chr(#LF)
Noch viel cooler ist eigentlich #LF$ :wink: