[PERL] je suis débutant
drogba7213
Messages postés
1550
Statut
Membre
-
drogba7213 Messages postés 1550 Statut Membre -
drogba7213 Messages postés 1550 Statut Membre -
Bonjour,
je suis débutant en perl et j'avoue pas tout comprendre
Voila je code sous xp et dans un premier temps j'ai installé cygwin pour pouvoir mettre en place les modules cpan dont j'ai besoin mais après il me fallait tk donc j'ai installé active perl tk fonctionne j'ai donc commencé a codé enfin...
Et derrière mon code ne s'éxécute pas pouvez vous me dire pourquoi svp?
aidez moi svp
merci d'avance
je suis débutant en perl et j'avoue pas tout comprendre
Voila je code sous xp et dans un premier temps j'ai installé cygwin pour pouvoir mettre en place les modules cpan dont j'ai besoin mais après il me fallait tk donc j'ai installé active perl tk fonctionne j'ai donc commencé a codé enfin...
Et derrière mon code ne s'éxécute pas pouvez vous me dire pourquoi svp?
#!/usr/local/bin/perl
use Tk; #Utilisation de Tk
use Tk::ProgressBar;
#Définition de notre fonction de fermeture de l'application
sub Quitter
{
exit(0);
}
#Création de la fenêtre principale
$fen = MainWindow->new();
#Définition de la taille min de la fenêtre
$fen->minsize('500','300');
#Définition du title de la fenêtre
$fen->title("Islo People");
#Création de la barre de menu
$barre_menu = $fen->Frame(-relief => 'groove' , -borderwidth => 2);
#Création de la barre du menu général
$menu_gen = $barre_menu->Menubutton(
-text => 'Menu' ,
-font => '{Garamond} 10',
-tearoff => 0 ,
-menuitems => [
[ 'command' => 'Quitter' ,
-font => '{Garamond} 10',
-command => \&Quitter
]
]
);
#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');
#Ajout du label Hello World
$fen->Label(
-text => "Islo people" ,
-font => '{Garamond} 10',
)->pack(
-anchor => 'ne',
-fill => 'x'
);
$progress = $parent->ProgressBar(
-width => 200,
-length => 20,
-anchor => 's',
-from => 0,
-to => 100,
-blocks => 10,
-colors => [0, 'green', 50, 'yellow' , 80, 'red'],
-variable => \$percent_done
);
$progress->value($position);
#Création de notre barre de statut à l'aide d'un Label
$barre_statut = $fen->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;
aidez moi svp
merci d'avance
A voir également:
- [PERL] je suis débutant
- Logiciel montage vidéo débutant - Guide
- Logiciel de programmation pour débutant - Guide
- Platine dj debutant - Forum Enregistrement / Traitement audio
- Apprendre le coran pour débutant (+ pdf) - Télécharger - Histoire & Religion
- Comment utiliser un ordinateur pour un débutant - Astuces et Solutions
7 réponses
Salut,
Tu as un souci à l'execution car ta fenetre principale s'appelle "$fen" mais toi en appelant le progressBar tu veux le faire apparaitre sur une fenetre qui s'appelle "$parent" or celle là n'existe pas. Donc la remplacer par $fen.
Après je sais pas si tout est résolu.
Voilà
Tu as un souci à l'execution car ta fenetre principale s'appelle "$fen" mais toi en appelant le progressBar tu veux le faire apparaitre sur une fenetre qui s'appelle "$parent" or celle là n'existe pas. Donc la remplacer par $fen.
Après je sais pas si tout est résolu.
Voilà
Je confirme ce que dis koa0. Tu dois remplacer $parent par $fen dans ta progressBar et cela fonctionne sans problème.
Voilou.
Voilou.
Juste une autre chose.
Faudrait aussi faire apparaitre le progressbar via pack car sinon il est construit mais n'apparait pas.
$progress = $fen->ProgressBar(
-width => 200,
-length => 20,
-anchor => 's',
-from => 0,
-to => 100,
-blocks => 10,
-colors => [0, 'green', 50, 'yellow' , 80, 'red'],
-variable => \$percent_done
)->pack();
Faudrait aussi faire apparaitre le progressbar via pack car sinon il est construit mais n'apparait pas.
$progress = $fen->ProgressBar(
-width => 200,
-length => 20,
-anchor => 's',
-from => 0,
-to => 100,
-blocks => 10,
-colors => [0, 'green', 50, 'yellow' , 80, 'red'],
-variable => \$percent_done
)->pack();
oui effectivement j'avais trouvé désolé javais pas vu pardon par contre je rencontre quelque autre problème je vous résume tout ca
voila je souhaite faire une application en perl pour mon bts hélas c'est la première fois que j'utilise ce langage et je n'ai donc pas tout les réflexes concernant les différents modules a utilisé.
Donc je vous dit ce que je souhaite faire.
Donc dans un premier temps je souhaite que quand l'utilisateur clic droit sur une ou plusieurs foto il puisse envoyé vers un ftp sécurisé. Et l'application fait tout tout seul.
Donc la connexion au ftp c'est bon.
ce qu'il me manque dans l'immédiat ca serait comment je peut récupérer les fichier que l'utilisateur a clické droit dessus?
Ensuite récupérer leur chemin.
Les envoyé sur le ftp.
Et faire un controle si tout a bien été envoyé.
Pour le moment comme je vous disait la connexion se fait bon a la rigueur je pense pouvoir trouvé comment envoyé un ou plusieurs fichiers sur le ftp. j'arrive pas a utiliser Tk:NG je ne sais pas pourquoi bref. J'utilise une barre de progression pour l'envoi des fichiers donc il faut que je les compte et ensuite faire une vérif. bref la je suis un peu a cours
Pourriez vous m'éclairer svp?
merci d'avance
voila je souhaite faire une application en perl pour mon bts hélas c'est la première fois que j'utilise ce langage et je n'ai donc pas tout les réflexes concernant les différents modules a utilisé.
Donc je vous dit ce que je souhaite faire.
Donc dans un premier temps je souhaite que quand l'utilisateur clic droit sur une ou plusieurs foto il puisse envoyé vers un ftp sécurisé. Et l'application fait tout tout seul.
Donc la connexion au ftp c'est bon.
ce qu'il me manque dans l'immédiat ca serait comment je peut récupérer les fichier que l'utilisateur a clické droit dessus?
Ensuite récupérer leur chemin.
Les envoyé sur le ftp.
Et faire un controle si tout a bien été envoyé.
Pour le moment comme je vous disait la connexion se fait bon a la rigueur je pense pouvoir trouvé comment envoyé un ou plusieurs fichiers sur le ftp. j'arrive pas a utiliser Tk:NG je ne sais pas pourquoi bref. J'utilise une barre de progression pour l'envoi des fichiers donc il faut que je les compte et ensuite faire une vérif. bref la je suis un peu a cours
Pourriez vous m'éclairer svp?
merci d'avance
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ok alors je met le script pour le moment c'est surtout du test mais bon donc il va y avoir de commenté le Tk::PNG de commenté car il me pose problème et le Net::FTPSSL qui ne fonctionne pas je ne sais pas pourquoi non plus voila je vous met le code merci de regarder c'est gentil
#!/usr/local/bin/perl
use Tk; #Utilisation de Tk
#use strict;
use warnings;
use Tk::ProgressBar;
#use Tk::Photo;
#use Tk::PNG;
#use Net::FTPSSL;
##module qui pourrait m'être utile
#Net::FTP::File
#if ("il y a des fichiers de sélectionné")
# {
# my $ftps = Net::FTPSSL->new("192.168.0.69",
# Port=> 21,
# Encryption => EXP_CRYPT,
# Debug => 1)
# or die "Impossible de se connecter à Islo people";
#
# $ftps-> login('photographe', 'passe')
# or die "Pas de login : "
# }
#Définition de la fonction de fermeture de l'application
sub Quitter
{
exit(0);
}
#Création de la fenêtre principale
$fen = MainWindow->new();
#Définition de la taille min de la fenêtre
$fen->minsize('500','300');
#Définition du title de la fenêtre
$fen->title("Islo People");
#Création de la barre de menu
$barre_menu = $fen->Frame(-relief => 'groove' , -borderwidth => 2);
#Création de la barre du menu général
$menu_gen = $barre_menu->Menubutton(
-text => 'Menu' ,
-font => '{Garamond} 10',
-tearoff => 0 ,
-menuitems => [
[ 'command' => 'Quitter' ,
-font => '{Garamond} 10',
-command => \&Quitter
]
]
);
# Création d'un cadre
my $frame1 = $fen->Frame()->pack(-side => "bottom",-padx => 10, -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 => "image.png" );
#my $bouton2 = $fenetre -> Button (
# -image => $ObjImage,
# -command => sub { exit; },
#)->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 ;
print "comptage en cours: $lostime \n" ;
# l'instruction suivante permet la prise en compte
# des changements de valeurs de $status_var dans Perl/Tk,
# ici le widget Progressbar
$fen->update;
}
sleep 5;
print "Fin de l'exemple update \n";
$fen->destroy;
#Création de notre barre de statut à l'aide d'un Label
$barre_statut = $fen->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;