IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tcl/Tk Discussion :

Problème de variable listbox


Sujet :

Tcl/Tk

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Problème de variable listbox
    Bonjour,
    Je suis entrain de développer une application qui ouvre une listbox permettant à l'utilisateur de faire un choix. Lorsqu'il valide le choix je voudrais que la valeur choisie soit placée dans une variable mais j'ai l'erreur suivante :
    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
     
    can't read "w": no such variable
    can't read "w": no such variable
        while executing
    "$w curselection"
        (procedure "list_selectvalues" line 5)
        invoked from within
    "list_selectvalues .mel"
        (procedure "valider" line 3)
        invoked from within
    "valider"
        invoked from within
    ".ok invoke"
        ("uplevel" body line 1)
        invoked from within
    "uplevel #0 [list $w invoke]"
        (procedure "tk::ButtonUp" line 24)
        invoked from within
    "tk::ButtonUp .ok"
        (command bound to event)
    voici mon programme :
    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
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
     
    package require Tk
     
    set b [button .quit -text quitter -command {destroy .}]
    proc select {parent values} {
     
    		frame $parent
    		set choices [scrolled_listbox $parent.choices \
    			-width 20 -height 5 ]
    		set picked [scrolled_listbox $parent.picked \
    			-width 20 -height 5 ]
    		pack $parent.choices $parent.picked -side left \
    			-expand true -fill both
    		bind $choices <ButtonRelease-1> \
    		         [list listTransferSel %W $picked]
    		bind $picked  <ButtonRelease-1> \
    			{listdeletesel %W %y}
    		foreach x $values {
    			$choices insert end $x
    		}
    }
    #====================================================================================================	
    proc listTransferSel {src dst} {
     
    		foreach i [$src curselection] {
    			$dst insert end [$src get $i]
    		 }
    		 	set u [expr $i + 1 ]
    			puts stdout "la variante active choisie est la $u variante "
     
    }
    #=================================================================================================	
    proc listdeletesel {w y} {
    		foreach i [lsort -integer -decreasing [$w curselection]] {
    			$w delete $i
    		}
    }
    #=================================================================================================	
    proc list_selectvalues  {parent} {
     
    		set picked $parent.picked.list
    		set result {}
    		foreach i [$w curselection] {
    			lappend result [$w get $i]
    		}
    }
    #=================================================================================================
    proc scrolled_listbox { f args } {
      frame $f
     
      listbox $f.list
      eval {$f.list configure} $args
     
      scrollbar $f.xscroll -orient horizontal \
        -command [list $f.list xview]
      scrollbar $f.yscroll -orient vertical \
        -command [list $f.list yview]
     
      grid $f.list -sticky news
      grid rowconfigure $f 0 -weight 1
      grid columnconfigure $f 0 -weight 1
     
      return $f.list
    }
    #=================================================================================================
    proc valider {} {
     
    	list_selectvalues .mel
    	puts stdout "le choix de la variante active à été effectué"
    	puts stdout "la variante est $result"
    }
    #=================================================================================================
     
    set list_variante {voie_a voie_b all}
    select .mel $list_variante
     
    set a [button .ok -text "valider la variante" -command valider]
     
    pack .mel -expand true -fill both
    pack $a -fill x -expand true
    pack $b -fill x -expand true
    tkwait window .
    exit
    merci d'avance pour votre aide !

    Cordialement

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    341
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 341
    Points : 528
    Points
    528
    Par défaut
    Bonsoir,

    A première vue le message d'erreur fait référence à la procédure list_selectvalues.
    Dans cette procédure la variable w ne correspond à rien alors qu'elle devrait contenir, je suppose, .mel.picked .

    ----
    Canvas

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 42
    Points : 30
    Points
    30
    Par défaut
    Bonjour,

    un petit global pour w

    Le Bertch

Discussions similaires

  1. [VB.NET] Probléme de variable
    Par Silvia12 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 02/03/2005, 11h51
  2. [Debutant(e)]problème de variable d'environnement
    Par tolsam dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 12/08/2004, 19h08
  3. Problème de variable
    Par vp dans le forum Windows
    Réponses: 2
    Dernier message: 14/05/2004, 16h27
  4. [Débutant] Problème de variables
    Par bonnefr dans le forum SWT/JFace
    Réponses: 9
    Dernier message: 12/05/2004, 17h41
  5. [servlet]problème de variable jamais nulle
    Par omega dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 18/03/2004, 09h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo