Code: Links in Listen rumschieben
Übersicht

![]() |
DivineDominionBetreff: Code: Links in Listen rumschieben |
![]() Antworten mit Zitat ![]() |
---|---|---|
Weiß net obs ins Archiv sollte...
Jedenfalls habe ich mir was geschrieben um Einträge in Listen umherzuschieben, weil ich da nix passendes fand und remove und addlast mir zu doof waren - obwohls wohl leichter wäre, aber am Ende ist es mit der suche nach dem value in TLink zu lahm oder sowas... Jedenfalls funktioniert das ganz nett ![]() Code: [AUSKLAPPEN] Strict Global liste:TList = New TList Global link:TLink = liste.AddLast("1") liste.AddLast("2") liste.AddLast("3") liste.AddLast("4") liste.AddLast("5") show( liste ) moveDown( link, liste ) show( liste ) moveUp( link, liste ) show( liste ) movetoEnd( link, liste ) show( liste ) movetoStart( link, liste ) show( liste ) Function moveDown( hLink:TLink, hList:TList ) Local hPred:TLink = hLink._pred Local hSucc:TLink = hLink._succ hPred._succ = hSucc hSucc._pred = hPred hLink._succ = hSucc._succ hLink._pred = hSucc hSucc._succ._pred = hLink hSucc._succ = hLink EndFunction Function moveup( hLink:TLink, hList:TList ) Local hPred:TLink = hLink._pred Local hSucc:TLink = hLink._succ hPred._succ = hSucc hSucc._pred = hPred hLink._pred = hPred._pred hLink._succ = hPred hPred._pred._succ = hLink hPred._pred = hLink EndFunction Function moveToStart( hLink:TLink, hList:TList ) Local hFirst:TLink = hList.FirsTLink( ) If hLink = hFirst Then Return hLink._succ._pred = hLink._pred hLink._pred._succ = hLink._succ hFirst._pred._succ = hLink hLink._pred = hFirst._pred hLink._succ = hFirst hFirst._pred = hLink EndFunction Function moveToEnd( hLink:TLink, hList:TList ) Local hLast:TLink = hList.LastLink() If hLink = hLast Then Return hLink._succ._pred = hLink._pred hLink._pred._succ = hLink._succ hLast._succ._pred = hLink hLink._succ = hLast._succ hLast._succ = hLink hLink._pred = hLast EndFunction Function show( hList:TList ) For Local t:string = EachIn hList Print t Next Print "-------------" EndFunction |
||
christian.tietze@gmail.com - https://christiantietze.de
macOS |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group