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 :

Problème d'ouverture d'un fichier GIF [Python 3.X]


Sujet :

Tkinter Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    Retraité
    Inscrit en
    Août 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 86
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2017
    Messages : 3
    Par défaut Problème d'ouverture d'un fichier GIF
    Bonjour,

    Le code ci après provient du livre "Python and Tkinter programming (example_8_12.py) de John Grayson;
    Il est exécuté sous Windows 10 avec un environnement Python 3.7.3 et Anaconda3.


    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
     
    from tkinter import*
    import sys, string
     
    class MakeImageMap:
        def __init__(self, master, file=None):
            self.root=master
            self.file=file
            self.img=PhotoImage(file=File)                               # version 1
            self.img= imageTk.PhotoImage(Image, open(file)     # version 2
            self.width=self.img.width()
            self.height=self.image.height()
            self.canvas=Canvas(self.root, width=self.width, height=self.height
            self.canvas.pack(side="top", fill=BOTH, expand='no')
            self.canvas.create_image(0, 0, anchor=NW, image=self.img
     
    if __name__ == '__main__':
        file = "F:\OneDrive\Visual Studio 20129\Source\Python Lib\Grayson\Chapter08\Example_8_12\calculator.gif"
        root = Tk()
        makeImageMap = MakeImageMap(root, file=file)
        makeImageMap.root.mainloop()
    Le problème se produit lors de l'appel à MakeImageMap(root, file=file)
    Dans la version 1, on aboutit à
    ...\Anaconda3\Lib\tkinter\__init__ line 3501
    self.tk.call(('image', 'create', 'imgtype' , name) + options)
    qui cause le message;
    _tkinter.TclError: couldn't open "calculator.gif": permission denied.

    Dans la version 2 on aboutit à:
    ...\Anaconda3\Lib\site-packages\PIL\Image.py line 2609
    fp=__builtins__.open(filename, "rb")
    qui produit l'erreur
    Permission error- Permission denied F:\...\calculator.gif

    Dans la version 2, j'ai essayé, sans succès, les combinaisons suivantes d'attributs,
    pensant que le problème pourrait venir de là:

    attributs calculator.gif /attribut de open-filename, attribut) de Anaconda3
    "ax" / "rb"
    "a" / "rb"
    "r" / "rb"
    "r" / "r"
    J'ai également essayé avec un fichier Png, avec le même résultat.

    Les fichiers étaient la propriété de l'administrateur avec la permission "control total" pour celui ci.
    Images attachées Images attachées  
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Salut,

    A priori "permission denied" dit juste que vous n'êtes pas autorisé à ouvrir/accéder le fichier...
    Ce qui devrait pouvoir se vérifier en lançant le programme avec les privilèges d'administrateur.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre à l'essai
    Homme Profil pro
    Retraité
    Inscrit en
    Août 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 86
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2017
    Messages : 3
    Par défaut Réponse à wiztricks
    Merci pour la réponse.
    Je n'ai qu'un seul compte sur mon PC qui a les privilèges Administrateur.
    Le programme a été lancé a partir de Windows PowerShell (Admin).
    Le fichier calculator.gif s'ouvre sans problème avec Chrome, Paint3D, Photos.
    Que faire de plus?

    Bon week end.

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Citation Envoyé par GAUDOIS Voir le message
    Que faire de plus?
    Vous recopiez le fichier "calculator.gif" dans un répertoire personnel, vous lancez la console Windows (cmd.exe), vous changez votre répertoire par défaut à ce répertoire là puis vous lancez l'interpréteur Python.
    Au prompt, vous essayez de l'ouvrir normalement:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> open('calculator.gif')
    <_io.TextIOWrapper name='calculator.gif' mode='r' encoding='cp1252'>
    puis avec PhotoImage:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >>> import tkinter as tk
    >>> root = tk.Tk()
    >>> tk.PhotoImage(file='calculator.gif')
    <tkinter.PhotoImage object at 0x00000000026C2198>
    >>>
    Normalement, çà devrait fonctionner.
    La suite en fonction des résultats que vous aurez.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre à l'essai
    Homme Profil pro
    Retraité
    Inscrit en
    Août 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 86
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2017
    Messages : 3
    Par défaut
    J'ai suivi votre procédure, et le problème a disparu!
    J'ai toutefois été intrigué par le fait que j'ai été obligé de transporter mon code sur une autre partition de mon disque.
    Tout code transporté sur ma partition originelle (F:) buggait.
    Après moult recherches, je me suis aperçu que mes données sue la partition F étaient protégées et que les applications
    non listées n'avaient pas accès, entre autres, aux fichiers images (gif...).
    L'autorisation donnée à Python pour l'accès à ces types de fichier a corrigé le problème.
    Merci pour votre aide, et désolé de vous avoir dérangé pour un problème qui ne dépendait que de moi.
    Je considère, bien évidemment, le problème comme résolu

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

Discussions similaires

  1. [FTP] Problème sur ouverture d'un fichier sur serveur
    Par pbatty1 dans le forum Langage
    Réponses: 4
    Dernier message: 05/03/2008, 09h35
  2. Réponses: 2
    Dernier message: 04/01/2007, 09h22
  3. Problème d'ouverture d'un fichier
    Par vallgui dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 27/11/2006, 10h45
  4. Problème d'ouverture d'un fichier
    Par Matt2094 dans le forum Langage
    Réponses: 14
    Dernier message: 29/03/2006, 14h11
  5. problème d'ouverture d'un fichier EXCEL!!
    Par JauB dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/11/2005, 13h37

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