AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Name aus Liste löschen

Ein Thema von der olli · begonnen am 14. Nov 2005 · letzter Beitrag vom 15. Nov 2005
Antwort Antwort
der olli

Registriert seit: 18. Mai 2004
14 Beiträge
 
#1

Re: Name aus Liste löschen

  Alt 14. Nov 2005, 20:02
So, hab noch was weiterprogrammiert und bin direkt beim nächsten Fehler angelangt: Wenn ich das erste Element in der Liste löschen will, kommt zwar keine Fehlermeldung, das Element wird aber auch nicht aus der Listbox entfernt. Wenn ich daraufhin das nachfolgende Element löschen will, ist dieses angeblich nicht mehr in der Liste.
Ähnliches, wenn ich ein einziges Element aus der Listbox löschen will, ohne, dass noch andere vorhanden sind. Wenn ich das versuche, kommt ein Fehler und das Programm stürzt ab.

Hier mal mein etwas veränderter Lösch-Algorithmus (der Rest ist gleich geblieben):
Delphi-Quellcode:
procedure TSkispringen.bt_springer_loeschenClick(Sender: TObject);
var lauf : TZeiger;
    such : String;
begin
 such := InputBox('Eingabe','Name','');
 lauf := oben;
 WHILE (lauf^.nachher <> nil) AND (such <> lauf^.name) DO
  lauf := lauf^.nachher;
 IF (lauf^.name = such) AND (lauf^.nachher = nil) AND (lauf^.vorher <> nil) THEN // letztes Element
  lauf^.vorher^.nachher := nil
 ELSE IF (such = lauf^.name) AND (lauf^.vorher <> nil) AND (lauf^.nachher <> nil) THEN // nicht erstes/letztes Element
 begin
  lauf^.vorher^.nachher := lauf^.nachher;
  lauf^.nachher^.vorher := lauf^.vorher
 end
 ELSE IF such = oben^.name THEN // erstes Element
  oben^.nachher^.vorher := nil
 ELSE
 begin
  ShowMessage('Springer nicht in der Liste!');
  exit
 end;
 ausgabe
end;
P.S.: Ich glaube, ich spreche das oberste Element falsch an, denn wenn ich nur ein einziges Element in der Liste habe und dieses löschen will, bricht das Programm ab und markiert die Zeile oben^.nachher^.vorher := nil !

P.S.: Das TZeiger kam tatsächlich vom Lehrer
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz