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

Tkinter Python Discussion :

Sélection répertoire : askdirectory


Sujet :

Tkinter Python

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 2
    Par défaut Sélection répertoire : askdirectory
    Python 2.5.2.
    Je voudrais utiliser un bouton pour lancer la sélection d'un répertoire, j'ai donc créé une fonction qui devrait se lancer quand on clique sur le bouton.
    Comme je débute, j'ai fait très simple et si je demande de l'aide, c'est parce que je n'ai pas obtenu le résultat désiré.
    Voilà le 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
     
    # -*- coding:Latin-1 -*-
    import Tkinter 
    import tkFileDialog
     
    def choixrep(rep):
    rep = tkFileDialog.askdirectory(initialdir="/",title='Choisissez un repertoire')
    if len(rep) > 0:
    print "vous avez choisi le repertoire %s" % rep
     
     
    fen1 = Tkinter.Tk()
    tex1 = Tkinter.Label(fen1, text='Répertoire des sources')
    tex1.pack()
     
     
    rep =''
    btnchoixrep = Tkinter.Button(fen1, text='Votre choix', command = choixrep(rep))
    btnchoixrep.pack()
     
    btnquitter = Tkinter.Button(fen1, text='Quitter', command = fen1.destroy)
    btnquitter.pack()
    fen1.mainloop()
    Ou est l'erreur ?
    Please help

  2. #2
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Dans la construction du bouton de choix, il ne faut pas de parenthèse ni de passage de paramètre à la fonction appelée (command = choixrep). Sinon, il faudrait utiliser lambda, mais là, ça n'aurait pas de sens. Il faut aussi pouvoir accéder à la variable globale rep avec "global rep".

    Voilà ton code légèrement modifié:

    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
     
    import Tkinter
    import tkFileDialog
     
    def choixrep():
        global rep
        rep = tkFileDialog.askdirectory(initialdir="/",title='Choisissez un repertoire')
        if len(rep) > 0:
            print "vous avez choisi le repertoire %s" % rep
     
     
    fen1 = Tkinter.Tk()
    tex1 = Tkinter.Label(fen1, text='Répertoire des sources')
    tex1.pack()
     
    rep =''
    btnchoixrep = Tkinter.Button(fen1, text='Votre choix', command = choixrep)
    btnchoixrep.pack()
     
    btnquitter = Tkinter.Button(fen1, text='Quitter', command = fen1.destroy)
    btnquitter.pack()
    fen1.mainloop()
    NB: dans tes prochains posts, mets tes codes entre les tag de code (choisir # au menu) pour que l'indentation des lignes soit conservée.

    Tyrtamos

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 2
    Par défaut
    MONSIEUR Tyrtamos : Remerciements éblouis.
    Vu et noté pour la balise.
    Sigismo

  4. #4
    Membre très actif
    Inscrit en
    Septembre 2009
    Messages
    246
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 246
    Par défaut
    Bonjour

    En utilisant le code de tyrtamos
    je voudrais ajouter le texte du dossier courant
    par exemple "c:/temp"

    je voudrais crée un évènement sur le bouton "btnchoixrep "
    je choisis mon répertoire par exemple "D:/toto" après avoir appuyer sur ok

    Dans ma fenêtre "c:/temp" est remplacé par "D:/toto"

    Merci

Discussions similaires

  1. Sélection répertoire par défaut
    Par sam-sam dans le forum Composants VCL
    Réponses: 6
    Dernier message: 21/12/2010, 15h47
  2. [Inno Setup] Fenêtres custo sélection répertoire
    Par the java lover dans le forum Outils
    Réponses: 16
    Dernier message: 04/03/2009, 18h08
  3. Réponses: 0
    Dernier message: 19/11/2008, 12h21
  4. [Swing] Browser (sélection de répertoire)
    Par _KB_ dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 31/03/2006, 23h24
  5. [débutant][JFileChooser] Sélection et récupération d'un répertoire
    Par pingoui dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 24/01/2005, 17h35

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