Bonjour tout le monde,
je suis nouvelle sur ce forum et j'ai un gros problème qui m'enquiquine depuis 3 jours.
Alors voilà mon code :
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
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
sub changement_nom_fichier_partiel{
        my ($fichier) = @_;
        my $fenetre_fille = $fenetre ->Toplevel();
        $fenetre_fille -> title("Changement de nom de votre fichier");
        my $instruction = $fenetre_fille -> Label ( -text => "Entrer le nom de votre nouveau fichier qui contiendra les données\n que vous sélectionnerez par la suite\n",
                                                -font => "{arial} 13 {bold}",
                                                -foreground => "#2000B0") -> pack ( ) ;
       my $zone_saisi_nouveau_nom = $fenetre_fille -> Entry (-width => 100,
                                                  -textvariable =>\$fichier )-> pack ( ) ;
 
 
        my $btn_valider = $fenetre_fille -> Button ( -text => 'Valider' ,
                                   -font => "{arial} 10 {bold}",
                                   -height => 1,
                                    -width => 10,
                                    -activebackground => "green",
 
                                    -command =>  sub{
                                         my $nouveau_fichier = $zone_saisi_nouveau_nom -> get();
                                        unless( -e $nouveau_fichier)
                                        {
                                                my $reponse = "\nCe fichier semble ne pas exister !!\n";
                                                print $reponse;
                                                $fichier= $nouveau_fichier;
                                                return $fichier;
                                                $fenetre_fille ->destroy();
                                        }
                                        else {
                                                $boite_dialogue = $fenetre -> Dialog (
                                                          -title => 'ATTENTION' ,
                                                          -text => "Ce fichier exixte déjà\n Voulez-vous l'écraser?" ,
                                                          -bitmap => 'warning' ,
                                                          -default_button => 'Non' ,
                                                          -buttons => [ 'Oui' , 'Non' ]
                                                        ) ;
                                                $reponse_fenetre = $boite_dialogue -> Show ( ) ;
                                                if ( $reponse_fenetre eq 'Oui' )
                                                {
                                                $fichier=$nouveau_fichier;
                                                return $fichier;
                                                $fenetre_fille -> destroy();
                                                }
                                             }
                                        }
                                   ) -> pack();
$fenetre_fille ->grab();
$fenetre_fille ->raise();
 
}
je souhaite récupérer la valeur de $fichier au moment du return mais je ne sais pas comment.

quelqu'un pour m'aider?

Merci bcp pour toute l'aide que vous m'apporterez.