Bonjour,
J'essaie de m'attaquer à un problème depuis plusieurs jours mais je ne pense pas avoir la bonne méthode et je n'ai pas vraiment d'expérience en interface graphique.

Mon problème : Je récupère des textos d'une base de données, et je voudrais les afficher selon le schéma classique que l'on retrouve dans nos smartphones :


Toutes les données sont stockées dans l'ordre chronologique dans un array (merci encore à Gardyen d'ailleurs pour son aide !).
Dans un premier temps j'ai séparé les messages de l'envoyeur et du receveur dans 2 array : @textSender et @textReceiver.
Pour le moment je n'ai pas essayé de séparer les messages dans des cadres distincts, je les ai juste affichés soit à gauche, soit à droite. Je n'arrive pas à faire une scrollbar commune aux widgets $right_frame et $left_frame. Et je n'arrive pas non plus à justifier ces widgets l'un sur la gauche, l'autre sur la droite.

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
21
22
my $main_frame = $mw->Frame()->pack(-side => 'top', -fill => 'x');
my $adj = $mw -> Adjuster();
 
my $top_frame = $main_frame->Frame(-background => "red")->pack(-side => 'top',
                                                                -fill => 'x');
my $left_frame = $main_frame->Frame(-background => "SkyBlue1")->pack(-side => 'left',
																	-fill => 'y');
my $right_frame = $main_frame->Frame(-background => "SeaGreen3")->pack(-side => "right");
 
$top_frame->Label(	-text => "Messages", 
                    -background => "red")->pack(-side => "top");
$left_frame->Label(	-text => join("\n",@textSender),
					-background => "SkyBlue1",
                    -foreground => "black")->pack(-side => 'top');
$right_frame->Label(-text => join("\n",@textReceiver),
					-background => "SeaGreen3",
                    -foreground => "black")->pack(-side => 'top');
my $bouton = $mw->Button (
				-text =>"Fermer",
				-command => sub {exit;})->pack;
$adj -> packAfter($left_frame, -side => 'left');
MainLoop;
Pour le moment cela en me permet

Au vu de mes galères, je pense que pack ne serait pas la bonne méthode à utiliser, le mieux serait un grid peut-être, mais j'ai plus de 800 messages à afficher.

Pourriez-vous me conseiller une méthode ou un exemple qui se rapprocherait de ce que je voudrais réaliser ?
Merci d'avance !