Récupération des éléments sélectionner dans une liste
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| # lire tous les elements selectionner dans la boite de liste 1
my @indices_enz_select;
my $bouton1vers2 = $main->Button(
-text => '>>',
-command => sub {
# lire element selectionner dans la boite de liste 1
my @elt_selectionnes = $liste1->curselection();
# ajout des éléments dans @indices_enz_select
push @indices_enz_select, @elt_selectionnes;
foreach my $elt1 (@elt_selectionnes) {
# Déplacement dans la liste 2
$liste2->insert( 'end', $liste1->get($elt1) );
# suppression de la liste 1
$liste1->delete($elt1);
}
},
);
my $bouton2vers1 = $main->Button(
-text => '<<',
-command => sub {
# lire element selectionner dans la boite de liste 1
my @elt_selectionnes = $liste2->curselection();
# suppression des éléments dans @indices_enz_select
map {delete $indices_enz_select[$_];} @elt_selectionnes;
foreach my $elt2 (@elt_selectionnes) {
# Déplacement dans la liste 1
$liste1->insert( 'end', $liste2->get($elt2) );
# suppression de la liste 2
$liste2->delete($elt2);
}
},
); |
J'aimerais récupérer dans @indices_enz_select les indices de la liste des éléments sélectionnés. Le problème est que les indices de @elt_selectionnes changent à chaque passage par les boutons et donc ne me permettra pas de retrouver au final les valeurs associées aux éléments sélectionnés. La solution serait donc à mon avis de récupérer les valeurs directement, est-ce la meilleure solution?
Merci pour votre aide,