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 :

Probleme de récupération de donnée sur Listbox [Python 3.X]


Sujet :

Tkinter Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2021
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Décembre 2021
    Messages : 2
    Par défaut Probleme de récupération de donnée sur Listbox
    Bonjour à tous, je suis débutant en programmation et pour mon entreprise j'ai décider de me lancer dans un programme qui permet de :

    en sélectionnant les dimensions( qui seront dans une listebox ou deux ( ex : 1.70 x 1.60 ) ainsi que la marque ( Cofreco ou Noe ) > on obtiens l'image qui ai associer > de modifier cette image en y incorporant le texte récupérer des Entry > de la convertir en pdf > et de l'enregistrer dans le dossier de mon choix.

    J'arrive a modifier l'image avec le texte voulu a l'endroit voulu de l'image, parfait. j'ai réussi a convertir l'image en pdf, très bien.

    mon problème je n'arrive pas à récupérer la sélection de ma Listbox( qui sera une image ( ou un texte qui sera associer à l'image ) ) pour l'utiliser et de le sauvegarder en pdf dans le dossier voulu

    Je pense que je m'y prend mal, j'ai essayer avec une Listbox d'afficher les noms de mes images du dossier ( avec os.listdir ) et de récupérer l'image sélectionner mais je n'y arrive pas.

    j'ai donc essayer de faire un dictionnaire mais j'ai plus d'une centaine d'image et sa peut monter car j'en rajouterai tt au long de ma carrière et je sais pas si c'est la meilleurs solutions

    Auriez-vous des conseils ou des pistes pour me guidez que je puisse approfondirez mes recherches ?

    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
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
     
    import tkinter
    import os
    from tkinter import*
    from PIL import Image, ImageDraw, ImageFont
    from tkcalendar import DateEntry
    from tkinter import END
    import tkinter.filedialog
     
    # Fenetre principale
     
    Matequip = Tk()
     
    Matequip.title("Matequip")
     
    Matequip.iconbitmap("logo1.ico")
    Matequip.geometry("800x600")
     
    Matequip.maxsize(600, 500)
     
     
    # Menu deroulant1
     
    cofreco170D = os.listdir(dossier où récupérer les images)
     
    cofreco170 = tkinter.Listbox(Matequip, width=25)
    cofreco170.bind('<<ListboxSelect>>')
    cofreco170.place(x=400, y=20)
     
     
    lselec = tkinter.Label(Matequip)
    lselec.place(x=300, y=300)
     
    for file in cofreco170D:
        cofreco170.insert(END, file)
     
    # Choix de marque 
     
    # choix de marque
     
    check = tkinter.Checkbutton(Matequip, text="Noe")
    check.place(x=300, y=20)
     
    check1 = tkinter.Checkbutton(Matequip, text="Cofreco")
    check1.place(x=400, y=20)
     
    # Texte pour client
    titre = Label(Matequip, text="Client :")
    titre.place(x=0, y=10)
     
    myEntry = tkinter.Entry(Matequip, width=30)
    myEntry.place(x=60, y=10)
     
     
    # Texte pour chantier
    titre1 = Label(Matequip, text="Chantier :")
    titre1.place(x=0, y=50)
     
    myEntry1 = tkinter.Entry(Matequip, width=30)
    myEntry1.place(x=60, y=50)
     
     
    # Texte pour N°client
    titre2 = Label(Matequip, text="N°Client :")
    titre2.place(x=0, y=100)
     
    myEntry2 = tkinter.Entry(Matequip, width=30)
    myEntry2.place(x=60, y=100)
     
     
    # Texte pour N°Affaire
    titre3 = Label(Matequip, text="N°Affaire :")
    titre3.place(x=0, y=150)
     
    myEntry3 = tkinter.Entry(Matequip, width=30)
    myEntry3.place(x=60, y=150)
     
     
    # Interlocuteur
    titre4 = Label(Matequip, text="Interlocuteur :")
    titre4.place(x=0, y=200)
     
    myEntry4 = tkinter.Entry(Matequip, width=30)
    myEntry4.place(x=85, y=200)
     
     
    # Date
    dateauto = DateEntry(Matequip, selectmode='day', date_pattern='dd/MM/yyyy')
     
    dateauto.place(x=110, y=250)
     
     
    titre5 = Label(Matequip, text="Date d'aujourd'hui :")
    titre5.place(x=0, y=250)
     
     
    # Seconde fenetre
     
     
    def ecritsurimage():
     
        CLIENT = myEntry.get()
        chantier = myEntry1.get()
        numClient = myEntry2.get()
        numaffaire = myEntry3.get()
        personne = myEntry4.get()
        date = dateauto.get()
        choix = PhotoImage(cofreco170)
        font = ImageFont.truetype('arial.ttf', 25)
        img = Image.open(choix)
        draw = ImageDraw.Draw(img)
        draw.text((1630, 2970), (f"{CLIENT}"), (0, 153, 204), font=font)
        draw.text((1890, 2980), (f"{chantier}"), (0, 153, 204), font=font)
        draw.text((1835, 2902), (f"{numClient}"), (0, 153, 204), font=font)
        draw.text((2165, 2902), (f"{numaffaire}"), (0, 153, 204), font=font)
        draw.text((2195, 2980), (f"{personne}"), (0, 153, 204), font=font)
        draw.text((650, 2868), (f"{date}"), (0, 153, 204), font=font)
        fichier = [('All File', '*.*'),
                   ('PDF File', '*.pdf')]
        fichiers = asksaveasfile(filetypes=fichier, defaultextension=fichier)
     
    Bouton8 = tkinter.Button(Matequip, height=1, width=30, text=" Modifier le fichier selectionner ",command=ecritsurimage)
    Bouton8.place(x=60, y=400)
     
     
    Matequip.mainloop()

  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,

    Vous avez écrit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    cofreco170 = tkinter.Listbox(Matequip, width=25)
    cofreco170.bind('<<ListboxSelect>>')
    S'il n'y a rien à appeler lorsque l'évènement ListboxSelect arrive, ben, çà ne fait rien.
    Et si vous n'avez pas la curiosité de regarder comment fonctionne une Listbox avant de partir à vous en servir... on ne peut pas faire çà pour vous.

    Regarder la page de tkdocs sur ce widgets, trouver une documentation décente, imaginer un cas d'utilisation qui reflète ce que vous voulez en faire... et poster un code minimal qui illustre le problème rencontré en quelque lignes.

    Toute une démarche...

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

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2021
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Décembre 2021
    Messages : 2
    Par défaut
    Bonjour,

    Désolée de répondre si tardivement, mais voilà c'était pour vous dire que j'ai résolu mon problème.

    J'ai utiliser un autre moyen pour récupérer mes images dans un dossier, Je m'explique :

    J'ai utiliser Optionmenu ainsi que .get pour récupérer la valeurs sélectionner(les valeurs sont des noms de dossier)

    avec os.getcwd et os.path.join et les valeurs récupérer je construis mon chemin jusqu'à l'image voulu


    cela fonctionne pour moi

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 24/11/2008, 16h58
  2. Récupération de donnée sur support altéré
    Par Invité dans le forum Périphériques
    Réponses: 8
    Dernier message: 05/07/2006, 11h28
  3. Récupération de données sur Disque Dur
    Par assomniak dans le forum Windows XP
    Réponses: 3
    Dernier message: 17/06/2006, 15h57
  4. [AJAX] probleme de récupération de donnée par GET
    Par Death83 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/06/2006, 17h00
  5. récupération de données sur une disquette
    Par olilacta dans le forum Ordinateurs
    Réponses: 3
    Dernier message: 21/04/2006, 13h41

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