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 :

Utilisation de filedialog.askdirectory [Python 3.X]


Sujet :

Tkinter Python

  1. #1
    Membre confirmé
    Homme Profil pro
    Retraité
    Inscrit en
    Septembre 2013
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2013
    Messages : 91
    Par défaut Utilisation de filedialog.askdirectory
    Bonjour,
    Je souhaite récupérer le nom d'un répertoire en utilisant askdirectory par l'intermédiaire d'un bouton.
    je veux que ma recherche démarre à partir d'un répertoire donné, par exemple "E:\\Photos"
    Voici mon code:
    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
     
    import tkinter as tk
    from tkinter.filedialog import askdirectory
     
    def ChoixRepertoire():
        repertoire=askdirectory(initialdir="E\\Photos",title="Choisir un répertoire")
        nomRepertoire.set(repertoire)
        print(nomRepertoire.get())
        return
     
    fenetre=tk.Tk()
    fenetre.geometry("50x50")
    nomRepertoire=tk.StringVar()
     
    bouton=tk.Button(fenetre,text="Choix répertoire",command=ChoixRepertoire)
    bouton.grid(column=0,row=0)
     
    fenetre.mainloop()
    Cela ne fonctionne pas, car à l'ouverture de la fenêtre de navigation de l'explorateur le répertoire qui apparaît n'est pas E:\\Photos mais le dernier répertoire choisi!
    le paramètre initialdir= semble inopérant

    Quelqu'un peut-il m'aider?

  2. #2
    Membre confirmé
    Homme Profil pro
    Retraité
    Inscrit en
    Septembre 2013
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2013
    Messages : 91
    Par défaut
    Citation Envoyé par Cemalatowilo Voir le message
    Bonjour,
    Je souhaite récupérer le nom d'un répertoire en utilisant askdirectory par l'intermédiaire d'un bouton.
    je veux que ma recherche démarre à partir d'un répertoire donné, par exemple "E:\\Photos"
    Voici mon code:
    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
     
    import tkinter as tk
    from tkinter.filedialog import askdirectory
     
    def ChoixRepertoire():
        repertoire=askdirectory(initialdir="E\\Photos",title="Choisir un répertoire")
        nomRepertoire.set(repertoire)
        print(nomRepertoire.get())
        return
     
    fenetre=tk.Tk()
    fenetre.geometry("50x50")
    nomRepertoire=tk.StringVar()
     
    bouton=tk.Button(fenetre,text="Choix répertoire",command=ChoixRepertoire)
    bouton.grid(column=0,row=0)
     
    fenetre.mainloop()
    Cela ne fonctionne pas, car à l'ouverture de la fenêtre de navigation de l'explorateur le répertoire qui apparaît n'est pas E:\\Photos mais le dernier répertoire choisi!
    le paramètre initialdir= semble inopérant

    Quelqu'un peut-il m'aider?
    J'ai trouvé d'où vient le problème:
    Il faut écrire "E/Photos" et non "E\\Photos"!!
    Pour ceux que cela intéresse, voici le programme qui fonctionne comme je le souhaite:
    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
     
    import tkinter as tk
    from tkinter.filedialog import askdirectory
     
    def ChoixRepertoire():    
        repertoire=askdirectory(initialdir=nomRepertoire.get(),title="Choisir un répertoire")
        nomRepertoire.set(repertoire)
        print(nomRepertoire.get())
        return
     
    fenetre=tk.Tk()
    fenetre.geometry("50x50")
    nomRepertoire=tk.StringVar()
    nomRepertoire.set("E:/Photos")
     
    bouton=tk.Button(fenetre,text="Choix répertoire",command=ChoixRepertoire)
    bouton.grid(column=0,row=0)
     
    fenetre.mainloop()

  3. #3
    Membre actif
    Homme Profil pro
    Animateur Numérique
    Inscrit en
    Février 2013
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Animateur Numérique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2013
    Messages : 142
    Par défaut
    Salut,

    La réponse est dans ta question "E:\\Photos" ou "E:/Photos"

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2016] Utilisation de FileDialog.InitialView, propriété
    Par EJO64 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 31/07/2018, 22h33
  2. Utilisation d'un wx.FileDialog
    Par Jiyuu dans le forum wxPython
    Réponses: 6
    Dernier message: 29/01/2010, 08h36
  3. [AC-2002] Utilisation de FileDialog
    Par Assyris dans le forum VBA Access
    Réponses: 6
    Dernier message: 21/07/2009, 13h53
  4. [VBA/Excel] Utilisation de FileDialog(msoFileDialogSaveAs)
    Par daniel_gre dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 23/09/2008, 11h41
  5. Utilisation de FileDialog
    Par papier dans le forum VBA Access
    Réponses: 1
    Dernier message: 02/11/2006, 15h24

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