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

Python Discussion :

Problème d'importation d'image avec Tkinter


Sujet :

Python

  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2022
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2022
    Messages : 2
    Par défaut Problème d'importation d'image avec Tkinter
    Bonsoir,
    Je souhaite importer une image sur Tkinter, mais malgré tous mes essais (de débutant...) et recherches sur internet, je n'y arrive pas !

    Voici mon code et le message d'erreur :
    Nom : Capture d’écran 2022-01-06 211639.png
Affichages : 104
Taille : 15,1 KoNom : Capture d’écran 2022-01-06 211649.png
Affichages : 109
Taille : 43,6 Ko

    Merci de votre aide

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 716
    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 716
    Par défaut
    Salut,

    Le message d'erreur dit juste que le fichier "CIS.gif" n'a pas été trouvé.

    Comme c'est un nom de fichier relatif, ça va le chercher dans le "répertoire de travail" (ou répertoire courant).
    Il peut se visualiser via:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    import os
    print(os.getcwd())
    Une solution serait de mettre un nom de fichier "absolu" (le chemin d'accès complet).

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

  3. #3
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2022
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2022
    Messages : 2
    Par défaut
    Merci, mais le problème c'est que ce travail doit être lu depuis plusieurs ordinateurs, donc avec des chemins d'accès différents .

    Entre temps, voilà ce que j'ai essayé... et le message d'erreur
    Nom : Capture d’écran 2022-01-06 223536.png
Affichages : 87
Taille : 70,6 Ko
    Nom : Capture d’écran 2022-01-06 223613.png
Affichages : 94
Taille : 19,1 Ko

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 716
    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 716
    Par défaut
    Salut,

    Utiliser la variable __file__ est une bonne idée... mais vous devriez regarder ce qu'elle contient avant de faire le .join. Faites aussi attention aux '\' qui doivent être doublés ('\\') pour être lus comme un seul '\' sinon, ils sont regroupés avec le caractère suivant pour fabriquer un caractère de contrôle (sauf à utiliser des raw-strings).

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

  5. #5
    Invité
    Invité(e)
    Par défaut
    Salut,

    En pratique il faut mettre un r devant:
    path = r'C:\Users\Toto\Desktop\test.txt'

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 716
    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 716
    Par défaut
    Citation Envoyé par LeNarvalo Voir le message
    En pratique il faut mettre un r devant:
    path = r'C:\Users\Toto\Desktop\test.txt'
    ca dépend... si le fichier est dans le même répertoire que le script:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    base = os.path.dirname(__file__)
    path = os.path.join(base, 'CIS.gif')
    n'a pas besoin d'écrire '\' dans une chaîne de caractères.
    Et si on a placé ses images dans le sous-répertoire images du répertoire du script principal:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    path = os.path.join(base, 'images/CIS.gif')
    Il faut juste savoir ce qu'on veut et comprendre ce qu'on fait.

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

Discussions similaires

  1. Problème de Scrollbars et d'images avec Tkinter
    Par Termirtau dans le forum Tkinter
    Réponses: 2
    Dernier message: 22/02/2018, 16h50
  2. Problème d'affichage d'images avec Tkinter
    Par flobos dans le forum Général Python
    Réponses: 3
    Dernier message: 14/03/2016, 16h35
  3. problème d'affichage dune image avec Tkinter
    Par destroy51 dans le forum GUI
    Réponses: 14
    Dernier message: 29/03/2014, 13h40
  4. problème d'affichage d'image avec mozilla
    Par lyon31 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 16/03/2006, 16h27
  5. [FLASH 8] Importation d'images avec transparence
    Par kephy dans le forum Flash
    Réponses: 6
    Dernier message: 17/10/2005, 17h08

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