Précédent   Forum du club des développeurs et IT Pro > Autres langages > Perl > Interfaces Graphiques
Interfaces Graphiques Forum d'entraide pour les interfaces graphiques en Perl (TK, GTK, Tk-Zinc, 2D et 3D avec OpenGPL, ....). Avant de poster, veuillez consulter la FAQ Perl/Tk , les cours Perl.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 20/11/2012, 11h52   #1
mazergt
Invité de passage
 
Inscription : novembre 2012
Messages : 1
Détails du profil
Informations forums :
Inscription : novembre 2012
Messages : 1
Points : 0
Points : 0
Par défaut [Perl:Tk] Passer d'une fnêtre à un autre.

Bonjour,
Je suis débutant en Perl et j'ai codé un petit programme. Pour le rendre plus accessible je voulais faire une interface graphique. J'ai commencé à lire la FAQ Perl Tk, ainsi que d'autres tutoriaux (dont le cours mongeur).
J'ai cependant un problème de compréhension et je ne trouve pas la réponse :

Je souhaiterais faire un menu avec deux boutons radio et un bouton "suivant". Le but serait lorsque l'on presse le bouton suivant, les deux boutons disparaissent pour afficher d'autres boutons en fonction de la variable associé à mes boutons radio qui précedent.

J'ai vu quelque part sur le forum la fonction update, sans vraiment savoir comme cela fonctionnait, et si cela servait dans mon cas.

Code :
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
50
51
 
#!/usr/bin/perl
use warnings;
use strict;
use Tk;    # Appel du module Tk
 
 
 
 
# Programme principal
# Création de la fenêtre
my $TOP = new MainWindow(
  -title      => 'Script Sorter',
  -background => 'white',
);
$TOP->minsize(400, 300);
 
#======================================================#
 
my $uds = 0;
my $suivant = 0;
 
 
my $boutonUDS = $TOP->Radiobutton(
        -text => 'UDS',
        -value => 1, 
        -variable => \$uds);
my $boutonSpecB = $TOP->Radiobutton(
        -text => 'SpecB', 
        -value => 0, 
        -variable => \$uds);
$boutonUDS->deselect;
$boutonSpecB->select;
 
my $boutonSuivant = $TOP->Button(
        -text    => 'Suivant',
        -command => [sub{$suivant=1} ,[sub{$TOP->update}]]
    );
 
 
if(!$suivant){
      $boutonUDS->grid(-row => 0, -column => 0);
      $boutonSpecB->grid(-row => 1, -column => 0);
      $boutonSuivant->grid(-row => 2, -column => 0);
}
#else{
#----- Le nouveau menu à afficher____#
#if(uds)
#etc
#}
mainloop;
Qu'en pensez-vous?
mazergt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2012, 22h14   #2
djibril
Responsable Perl et Outils

 
Avatar de djibril
 
Homme
Inscription : avril 2004
Messages : 13 818
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 33
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 13 818
Points : 31 524
Points : 31 524
Il faut jouer avec les propriété de pack ou grid, gestionnaire d'espace.
Mais dans un premier temps, je vous conseil déjà de concevoir la parie simple de votre interface sans chercher à masquer les éléments...
__________________
Pas de questions technique par messagerie privée (lisez les règles du forum Perl) et pour les nouveaux !
djibril est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 13h28.


 
 
 
 
Partenaires

Hébergement Web