Einzelnen Beitrag anzeigen

Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#3

Re: Array: mein integer ist leer :\

  Alt 15. Dez 2003, 21:04
hoi, sorry ich hab das falsche kopiert, also hier:


Delphi-Quellcode:
procedure irgendwas;
var
  i: integer;
  b: boolean;
  text: string;
begin
  text := bla;
  for i := 0 to high(QuizAntwort) do
  begin
    if lowercase(text) = lowercase(QuizAntwort[i].text) then // wenn text schon im array ist
    begin
      inc(QuizAntwort[i].Antworten);
      Showmessage(IntToStr(QuizAntwort[i].Antworten)); // müsste 2 zeigen, zeigt aber nichts an
      b := true;
    end;
    if b = false then
    begin
      SetLength(QuizAntwort, length(QuizAntwort)+1);
      QuizAntwort[high(QuizAntwort)].text := text;
      QuizAntwort[high(QuizAntwort)].Antworten := 1;
      ShowMessage(IntToStr(QuizAntwort[high(QuizAntwort)])); // zeigt 1
    end;
  end;
end;


beim ersten mal wenn "text"(bla) noch nicht in dem array ist wird der teil NACH dem "b = false" ausgeführt, sonst wird nur alles VOR dem "b = false" ausgeführt... also beim ersten mal wird mir "1" angezeigt, dann existierts also und beim 2ten aufruf der procedure wird alles vor "b = false" ausgeführt. ich habe da "inc(QuizAntwort[i].Antworten);" also müsste aus der "1" doch eine "2" werden, das wird es aber nicht, ich seh nichtmal die "1", das sowmessage zeigt mir nichts an

woher kommt das?
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat