Popup en perl
drogba7213
Messages postés
1524
Date d'inscription
Statut
Membre
Dernière intervention
-
drogba7213 Messages postés 1524 Date d'inscription Statut Membre Dernière intervention -
drogba7213 Messages postés 1524 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voila je cherche a faire un popup qui aura pour but d'afficher simplement un message style transfert effectué.
Je ne sais pas s'il existe un module bref je cherche dépannez moi svp
merci d'avance
Voila je cherche a faire un popup qui aura pour but d'afficher simplement un message style transfert effectué.
Je ne sais pas s'il existe un module bref je cherche dépannez moi svp
merci d'avance
A voir également:
- Popup en perl
- Fake mcafee popup - Accueil - Piratage
- Firefox autoriser popup - Guide
- Real popup - Télécharger - Divers Réseau & Wi-Fi
- Popup cookies - Guide
- Denon perl pro test - Accueil - Audio
4 réponses
Salut,
Utilise Perl Tk
Voici un exemple http://www.bin-co.com/perl/perl_tk_tutorial/dialogs.php
P.S. Regarde ici http://www.commentcamarche.net/forum/affich 12664129 probleme perl net ftpssl#2
Utilise Perl Tk
Voici un exemple http://www.bin-co.com/perl/perl_tk_tutorial/dialogs.php
P.S. Regarde ici http://www.commentcamarche.net/forum/affich 12664129 probleme perl net ftpssl#2
oui je vien de voir désolé de pas avoir répondu j'étais tellement sur mon problème que je l'ai résolut sans regarder si j'avais une réponse je vais le mettre en résolut.
par contre merci pour le lien mais comment ferais tu pour l'adapter a ce code stp?
Interface.pl
Connexion.pm
en fait jveux faire afficher les alertes (popup) quand le fichier est bien envoyé ou s'il ne l'a pas été.
Y'a écrit alert dans connexion.pm c'est la que je souhaite les déclenché.
Mais je ne vois pas comment faire pourrais tu m'aider svp?
merci d'avance
par contre merci pour le lien mais comment ferais tu pour l'adapter a ce code stp?
Interface.pl
#!/usr/bin/perl use warnings; use Carp; use strict; use Tk; use Tk::Photo; use Tk::PNG; use Connexion; # Connexion au serveur ftp my $file = '/home/seb/workspace/Islo/Configuration'; my $ObjetConnexion = new Connexion($file); #Création de la fenêtre principale my $fenetre = MainWindow->new(); #Définition de la taille min de la fenêtre $fenetre->minsize( '500', '300' ); #Définition du title de la fenêtre $fenetre->title("Islo People"); #Création de la barre de menu my $barre_menu = $fenetre->Frame( -relief => 'groove', -borderwidth => 2 ); #Création de la barre du menu général my $menu_gen = $barre_menu->Menubutton( -text => 'Menu', -font => '{Garamond} 10', -tearoff => 0, -menuitems => [ [ 'command' => 'Quitter', -font => '{Garamond} 10', -command => [\&Quitter, $ObjetConnexion], ] ] ); # Création d'un cadre my $frame1 = $fenetre->Frame()->pack( -side => "bottom", -padx => 0, -pady => 0 ); #Affichage du menu général à gauche $menu_gen->pack( -side => 'left' ); #Affichage de la barre de menu en haut de la fenêtre $barre_menu->pack( -side => 'top', -anchor => 'n', -fill => 'x' ); my $ObjImage = $fenetre->Photo( -format => "png", -file => "/home/seb/Desktop/Islo_people/logo.png" ); my $bouton2 = $fenetre->Button( -image => $ObjImage )->pack(); #parcourir my $chemin; my $BoutonParcourir = $frame1->Button( -text => 'Parcourir', -command => [ \&Chemin, $fenetre, \$chemin ], )->pack(); # Envoyer my $BoutonEnvoyer = $frame1->Button( -text => 'Envoyer', -command => sub { $ObjetConnexion->Transfert($chemin); }, )->pack(); #my $status_var =0; #$frame1->ProgressBar( # -borderwidth => 10, # -relief => 'sunken', # -width => 35, # -length => 500, # -padx => 0, # -pady => 0, # -variable => \$status_var, # -colors => [0, 'green'], # -resolution => 0, # -blocks => 50, # -anchor => 'w', # -from =>'0', # -to => '100' # )->pack( # -padx => 10, # -pady => 10, ## -fill => 'both' # ); # La boucle dans laquelle la variable de ProgressBar change #for (my $lostime = 0 ; $lostime < 101 ; $lostime += 5) #{ # sleep 1 ; # $status_var=$lostime ; # l'instruction suivante permet la prise en compte # des changements de valeurs de $status_var dans Perl/Tk, # ici le widget Progressbar # $fenetre->update; # } # sleep 5; #print "Fin de l'exemple update \n"; # $fenetre->destroy; #Création de notre barre de statut à l'aide d'un Label #my $barre_statut = $fenetre->Label(-relief => 'groove', -text => "Islo people", -font => '{Garamond} 10'); #On l'ajoute en bas de la fenêtre afin de lui donner l'effet barre de statut #$barre_statut->pack( -side => 'bottom', -fill => 'both'); MainLoop; #Définition de la fonction de fermeture de l'application sub Quitter { my ( $ObjetConnexion ) = @_; $ObjetConnexion->FermerConnexion(); exit(0); } sub Chemin { my ( $fenetre, $RefChemin ) = @_; ${$RefChemin} = $fenetre->getOpenFile( -initialdir => '/home', ); return; }
Connexion.pm
package Connexion; use strict; use Carp; use warnings; use Net::FTPSSL; # FTP use Config::Std; # Parser fichier de configuration our @ISA = qw(Exporter); our @EXPORT = qw / ConnectionFTP Transfert FermerConnexion /; our $VERSION = '0.01'; # Constructeur sub new { my ( $class, $FichierConfig ) = @_; # reference anonyme vers une table de hachage vide my $self = {}; unless ( defined $FichierConfig ) { croak("Fichier de configuration non defini\n"); } read_config $FichierConfig => my %config; $self->{Config} = $config{PARAMETERS}; # Etat de la connexion $self->{etat} = 0; # on indique que cette reference est liée au package (à la class) $class qui #faudra utiliser. bless( $self, $class ); #Connection au FTP my $ftps = Net::FTPSSL->new( $self->{Config}{server}, Port => $self->{Config}{port}, Debug => 1 ) or return $self; # Si la connection n'est pas effectué $etat prend la valeur faux $ftps->login( $self->{Config}{user}, $self->{Config}{mdp} ) or return $self; # Connexion OK $self->{etat} = 1; $self->{FTP} = $ftps; #on retourne la référence vers la table de hachage ainsi contruite. return $self; } sub Transfert { my ( $self, $fichier ) = @_; # Transfert du fichier if ( $self->{etat} == 1 ) { $self->{FTP}->cwd("/photographes"); $self->{FTP}->put($fichier); if ($self->{FTP}->get($fichier)) { Alert } else { Alert } } else { warn "Transfert impossible, connexion non etablie\n"; } return; } sub VerifierExtension { my ($TonFichier) = @_; unless ( scalar(@_) == 1 ) { croak('Usage : VerifierExtension("Monfichier.jpeg");'); } # Verification de l'extension unless ( -e $TonFichier and $TonFichier =~ m{(?:jpe?g|raw)$} ) { croak( "Mauvaise extension pour le fichier $TonFichier\nAutorise : jpeg, raw\n" ); } return; } sub FermerConnexion { my ($self) = @_; $self->{FTP}->quit() if ( $self->{etat} == 1 ); return; } 1;
en fait jveux faire afficher les alertes (popup) quand le fichier est bien envoyé ou s'il ne l'a pas été.
Y'a écrit alert dans connexion.pm c'est la que je souhaite les déclenché.
Mais je ne vois pas comment faire pourrais tu m'aider svp?
merci d'avance
Re,
Au début de Connexion.pm tu ajoutes
use Tk;
Ensuite où tu dois mettre les alertes, inspire toi de lien que je t'ai donné
Sinon tu peux tester
Au début de Connexion.pm tu ajoutes
use Tk;
Ensuite où tu dois mettre les alertes, inspire toi de lien que je t'ai donné
Sinon tu peux tester
my $msg=MainWindow->new; $msg->geometry("250x50+0+0"); $msg->title("Transfert fichiers"); $msg->Button(-text => "Fin", -command => sub{exit})->pack(-side=>'left',-expand=>1); $msg->Button(-text => "Continuer", -command => \&fonction)->pack(-side=>'right',-expand=>1); sub fonction{# à toi d'écrire la fonction print "ok\n"; } MainLoop;
je ne peut pas mettre ca dans interface.pl ?
my $msg=MainWindow->new; $msg->geometry("250x50+0+0"); $msg->title("Transfert fichiers"); $msg->Button(-text => "Fin", -command => sub{exit})->pack(-side=>'left',-expand=>1); $msg->Button(-text => "Continuer", -command => \&fonction)->pack(-side=>'right',-expand=>1); sub fonction Alerte{blabla }