Hatte einen ähnlichen Code zum Löschen.
In Verbindung mit einer Mehrfachauswahl-Listbox.
Klappte aber nicht, da der "delete" jedesmal die index wieder ändert.
Beispiel-liste:
0 - A
1 - B
2 - C
3 - D
Übergibt man die beiden Index (0,3) zum löschen, passiert folgendes.
1. Eintrag mit index 0 wird gelöscht. Liste aktualisert und index neu verteilt. die Liste sieht jetzt so aus:
0 - B
1 - C
2 - D
2. In der Schlaufe kommt jetzt index 3 dran.. doch den gibt es nicht mehr.. obwohl wir also index 0 und 3 löschen wollten, wurde nur 0 gelöscht.
ich habe das problem so gelöst, in dem ich die Liste mit den Index umkehre..
zuerst die höchten zulöschenden.. und dann runter..
vorher gab es ein Chaos und es wurde nur die hälfte gelöscht, jetzt klappts wunderbar...
foreach my $element(reverse(sort($listbox->curselection())))
{$listbox{'liste'}->delete($element);}
\n\n
<!--EDIT|master|1127467067-->
$i='re5tsFam ^l\rep';$i=~s/[^a-z| ]//g;$\= reverse "\U!$i";print;