Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Listbox: Wieso werden 2 zeilen nicht mit bearbeitet? (https://www.delphipraxis.net/12644-listbox-wieso-werden-2-zeilen-nicht-mit-bearbeitet.html)

Pseudemys Nelsoni 1. Dez 2003 17:58


Listbox: Wieso werden 2 zeilen nicht mit bearbeitet?
 
Liste der Anhänge anzeigen (Anzahl: 1)
hoi ich habe eine Listbox auf form1 in der die benutzer eines chats sind,
ich prüfe beim start jeden user durch (erste for schleife), mit den levels aus dem memo von Form3
(zweite for schleife). in dem memo sind die user so gelistet: "blabla:100" (als beispiel).
Ich mache das folgendermaßen:

Delphi-Quellcode:
procedure EndOfNicks(AUser: TIdIRCUser; ACommand, AContent: string);
var
  i, i2: integer;
  nick, nilist, lilist: string;
  match: boolean;
begin
  match := false;
  for i := 0 to Form1.Listbox1.Count-1 do
  begin
    for i2 := 0 to Form3.Memo1.Lines.Count-1 do
    begin
      nick := Form1.ListBox1.Items.Strings[i];
      nilist := Copy(Form3.Memo1.Lines.Strings[i2], 1, Pos(':', Form3.Memo1.Lines.Strings[i2])-1);
      lilist := Copy(Form3.Memo1.Lines.Strings[i2], Pos(':', Form3.Memo1.Lines.Strings[i2])+1, length(Form3.Memo1.Lines.Strings[i2]));
      if nick = nilist then
      begin
        Form1.ListBox1.Items.Delete(Form1.ListBox1.Items.IndexOf(nick));
        Form1.ListBox1.Items.Add(nick + #9 + '[0]');
        match := true;
        break;
      end
    end;
    if match = false then
    begin
      Form1.ListBox1.Items.Delete(Form1.ListBox1.Items.IndexOf(nick));
      Form1.ListBox1.Items.Add(nick + #9 + '[' + IntToStr(0) + ']');
    end;
  end;
end;
das ergebnis ist, das 2 (die letzten beiden) items irgendwie kein "level" bekommen, siehe anhang.
weiss jemand woher das kommt?

Pseudemys Nelsoni 1. Dez 2003 18:02

Re: Listbox: Wieso werden 2 zeilen nicht mit bearbeitet?
 
kann es sein, das das "break" beide for schleifen beendet?
komischerweise hörts nämlich dann auf, wenn ich(silent) das level 100 hab...wie kann ich sonst nur eine schleife beenden?

Pseudemys Nelsoni 1. Dez 2003 18:12

Re: Listbox: Wieso werden 2 zeilen nicht mit bearbeitet?
 
hab schon, das "match := false; " muss nach der ersten for schleife kommen, nicht davor

mfg


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:20 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