Bonjour à tous,
Je programme sous perl et je réalise un petit projet qui dans deux listebox va ajouter des paramètres. La liste box grandie énormément et pour cela j'ai voulu mettre une scrollbar pour garder une taille correcte. LE problème c'est que j'ai deux listebox qui grandissent à la même vitesse et je voudrais que ces deux listbox aient une taille fixe et que la scroll bare face défiler les deux listbox en même temps.
Pour ceux qui ne verrait pas voici un petit schéma :
Pour les informations complémentaires, pour des soucis de conceptions j'utilise une fonction particulière qui remplie la listebox d'éléments. J'ai donc pensé à mettre dans la fonction juste après les fonctions d'insertions :
Bien évidement ca n'a pas marché, je vous fournis au passage les constructions des widgets :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $lstF->insert('end', $toInser[$i]); $lstS->insert('end', $toInser[$i]); $scrollbar_1->configure(-command => [yview => $lstF]); $lstF->configure(-yscrollcommand => ['set', $scrollbar_1]); $lstS->configure(-yscrollcommand => ['set', $scrollbar_1]);
Et :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 my($listbox_1) = $root->Listbox ( -height => '0', -width => '0', ); my($listbox_2) = $root-> Listbox ( -height => '0', -width => '0', ); my($scrollbar_1) = $root-> Scrollbar ( -orient => "v", -command => [yview => $listbox_1], );
Je rappel que le premier bout de code est issue d'une fonction et que les deux autres sont issue de la même portée dynamique.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 $scrollbar_1->grid( -in => $root, -column => '4', -row => '5', -sticky => 'ns' ); $listbox_2->grid( -in => $root, -column => '1', -row => '5', -sticky => 'nesw' ); $listbox_1->grid( -in => $root, -column => '2', -row => '5', -columnspan => '2', -sticky => 'nesw' );
Donc la question est en deux partie :
Comment figer la taille des listbox ?
Comment faire en sorte que la scrollbar sur le côté régisse les deux widgets ?
Merci à tous de votre attention.
Partager