Python, Tkinter image aléatoire

Abbakie -  
yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour, j'écris ce message car j'ai besoin d'aide pour la création d'une fenêtre en tkinter.

Dans mon programme j'ai crée un bouton, j'aimerai que lorsque l'on appuie dessus une image aléatoire(provenant d'un fichier en contenant plusieurs) apparaisse mais je n'y arrive pas.

Voici le chemin d'accès au fichier qui contient les images:
S:\SIMON\Premiere\NSI\aProject Dogwithat
les fichiers se nomment Dogwithat1,Dogwithat2,Dogwithat3,... au format png
Bout=Button

1 réponse

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    bonjour,
    peut-tu partager ton code, en utilisant les balises: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

    "je n'y arrive pas": message d'erreur?
    0
    1. Abbakie
       
      from random import *
      from tkinter import *
      from glob import *
      from PIL import Image
      import os, random


      fenetre=Tk()
      fenetre.geometry("400x300") #précise la taille de la fenêtre
      fenetre.title("Dogwithat Generator") #Donne un nom à la fenêtre
      fenetre.configure(bg='#856ff8')# définie la couleur de fond de la fenêtre
      width=300 # définie la largeur de la fênetre
      height=300 # définie la hauteur de la fênetre
      image=PhotoImage(file="Normal-removebg-preview.png") # Image
      canvas= Canvas(fenetre, width=width, height=height,bd=0, highlightthickness=0) #création d'un canvas
      canvas.create_image(width/2, height/2, image=image) #crée le canvas
      canvas.pack(side=RIGHT) # définie la position du canvas



      def create(): # fonction qui permet d'ouvrir une nouvelle fênetre
      win = Toplevel(fenetre)



      Frame1=Frame(fenetre)

      Frame1.pack(side=LEFT) # Positionne l'élément 'Frame1' à gauche de la fenêtre
      MonMessage=Label(fenetre, text="DogWitHat Generator",fg='black',bg='#856ff8',height=2,font=("Minecraft", 50)) # création de l’objet + attribution de caractère (ex: taille, police d'écriture, couleur de fond,...)
      MonMessage.pack(side=TOP) #positionnement de l'objet

      Bout=Button(text="Generate a random dog",font=("",20), bg = "gray",fg="purple",width=20,command=create)# création de l’objet + attribution de caractère (ex: taille, police d'écriture, couleur de fond,...)
      Bout.pack(padx=6, pady=180) #positionnement de l'objet

      Bout2=Button(text="Secret Button",font=("",20), bg = "#856ff8",fg="#856ff8",width=20,command=create)# création de l’objet + attribution de caractère (ex: taille, police d'écriture, couleur de fond,...)
      Bout2.pack()

















      fenetre.mainloop()
      0
      1. Abbakie > yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention  
         
        from random import *
        <code python>from tkinter import *
        from glob import *
        from PIL import Image
        import os, random
        
        
        fenetre=Tk()
        fenetre.geometry("400x300") #précise la taille de la fenêtre
        fenetre.title("Dogwithat Generator") #Donne un nom à la fenêtre
        fenetre.configure(bg='#856ff8')# définie la couleur de fond de la fenêtre
        width=300 # définie la largeur de la fênetre
        height=300 # définie la hauteur de la fênetre
        image=PhotoImage(file="Normal-removebg-preview.png") # Image
        canvas= Canvas(fenetre, width=width, height=height,bd=0, highlightthickness=0) #création d'un canvas
        canvas.create_image(width/2, height/2, image=image) #crée le canvas
        canvas.pack(side=RIGHT) # définie la position du canvas
        
        
        
        def create(): # fonction qui permet d'ouvrir une nouvelle fênetre
            win = Toplevel(fenetre)
        



        Frame1=Frame(fenetre)
        
        Frame1.pack(side=LEFT) # Positionne l'élément 'Frame1' à gauche de la fenêtre
        MonMessage=Label(fenetre, text="DogWitHat Generator",fg='black',bg='#856ff8',height=2,font=("Minecraft", 50)) # création de l’objet + attribution de caractère (ex: taille, police d'écriture, couleur de fond,...)
        MonMessage.pack(side=TOP) #positionnement de l'objet
        
        Bout=Button(text="Generate a random dog",font=("",20), bg = "gray",fg="purple",width=20,command=create)# création de l’objet + attribution de caractère (ex: taille, police d'écriture, couleur de fond,...)
        Bout.pack(padx=6, pady=180) #positionnement de l'objet
        
        Bout2=Button(text="Secret Button",font=("Minecraft",20), bg = "#856ff8",fg="#856ff8",width=20,command=create)# création de l’objet + attribution de caractère (ex: taille, police d'écriture, couleur de fond,...)
        Bout2.pack()
        </code>
        0
      2. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > Abbakie
         
        "je n'y arrive pas": message d'erreur?
        0