Python, Tkinter image aléatoire

Fermé
Abbakie - 30 déc. 2021 à 19:50
yg_be Messages postés 23329 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 novembre 2024 - 30 déc. 2021 à 21:51
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
A voir également:

1 réponse

yg_be Messages postés 23329 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 novembre 2024 Ambassadeur 1 551
30 déc. 2021 à 20:14
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
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
yg_be Messages postés 23329 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 novembre 2024 1 551 > Abbakie
30 déc. 2021 à 20:44
Merci d'utiliser les balises de code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

"je n'y arrive pas": message d'erreur?
0
Abbakie > yg_be Messages postés 23329 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 novembre 2024
Modifié le 30 déc. 2021 à 21:21
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
yg_be Messages postés 23329 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 novembre 2024 1 551 > Abbakie
30 déc. 2021 à 21:51
"je n'y arrive pas": message d'erreur?
0