Autor Beitrag
F.Art Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 434



BeitragVerfasst: Sa 11.01.03 17:09 
@ Smiegel
Ich habe deine Idee eingebaut und die Datei wird gefunden.

@Wulfskin
Ich verstehe nicht wie du das mit Mode meinst.

ICh habe leider nicht soviel Ahnung von Delphi deswegen tuh ich mich schwer damit.
wulfskin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1349
Erhaltene Danke: 1

Win XP
D5 Pers (SSL), D2005 Pro, C, C#
BeitragVerfasst: Sa 11.01.03 17:31 
Hallo F.Art!

Da du Mode nicht initalisierst (also keinen Startwert zuweist), macht das Delphi (glaub ich) automatisch mit 0. So, wenn jetzt die erste Zeile leer ist, dann trifft die Else-Bedinung zu und es wird, da Mode = 0 ist, die Zeile hinzugefügt!

Gruß Hape!

_________________
Manche antworten um ihren Beitragszähler zu erhöhen, andere um zu Helfen.
Keldorn
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 2266
Erhaltene Danke: 4

Vista
D6 Prof, D 2005 Pro, D2007 Pro, DelphiXE2 Pro
BeitragVerfasst: Sa 11.01.03 19:48 
Hallo,
der Fehler liegt woanders
da ist in meinem Source noch n kleiner Fehler drin:
bei case hat das end gefehlt. passiert halt,wenn man was direkt ins Forum klimpert. das End hast du zwar hinzugefügt, leider aber an der falschen Stelle
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
         begin
            case mode of
              0: Listbox1.items.add(sl.items[i]);
              1: Listbox2.items.add(sl.items[i]);
              2: Listbox3.items.add(sl.items[i]);
             end;  //hat hier gefehlt :oops: 
         end;             
    end;
  sl.free;
end;

So wie du das end; hinzugefügt hast, steht das sl.free in der for Schleife. damit gibts du am Ende des ersten Durchlaufes die Stringliste wieder frei und dann scheitert natürlich der nächste Aufruf mit sl.strings[i] da nix mehr da ist und du siehst die exception. Deswegen steht auch nur ein Eintrag in der Listbox.
Dieser sollte natürlich nicht dort sein, da es ja die "Überschrift" sein soll

ausblenden Quelltext
1:
2:
3:
 if sl.strings[i]='Namen:' then Mode:=0
else if sl.strings[i]='Nachnahmen:' then Mode:=1
else if sl.strings[i]='EMail Adresse:' then Mode:=2

diese 3 Strings müssen genauso sein, wie in der Datei. Wenn in der Datei nun aufeinmal "Name:" statt "Namen:" steht funzt das ganze nicht, da dann Mode nciht gesetzt wird. Du mußt auch die Groß/Kleinschreibnung beachten! Das ist halt das Problem dabei, deswegen ist der Textdateiaufbau von Smiegel auch besser geeignet.

Frank

_________________
Lükes Grundlage der Programmierung: Es wird nicht funktionieren.
(Murphy)
F.Art Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 434



BeitragVerfasst: Sa 11.01.03 20:30 
OK so läufts.