Image dans une fenêtre

cr03 Messages postés 3 Date d'inscription samedi 21 juin 2014 Statut Membre Dernière intervention 22 juin 2014 - 21 juin 2014 à 18:02
Mints Messages postés 69 Date d'inscription mercredi 1 novembre 2000 Statut Membre Dernière intervention 1 juin 2018 - 26 juin 2014 à 09:59
Bonjour,
Je suis actuellement entrain de crée un programme sur python et j'aimerai mettre une image dans mes fenêtres ,
Si quelqu'un peut m'expliquer comme faire ,
Merci :)
A voir également:

3 réponses

Mints Messages postés 69 Date d'inscription mercredi 1 novembre 2000 Statut Membre Dernière intervention 1 juin 2018 7
21 juin 2014 à 21:00
Salut, si tu utilise tkinter, tu peux mettre une image dans tous les widgets qui en acceptent une en option comme un 'Label' par exemple, mais tu ne pourra pas la mettre directement dans ta fenêtre principale ni même dans une frame sans passer par la création d'un caneva (canvas) aux même dimensions.

D'abord il faut charger l'image qui, si elle est au format GIF s'importera comme ça :
imageTk = PhotoImage(file="nom_du_fichier_image")
Pour tout autre format(JPG) il te faudra importer le module PIL(pas sûr qu'il soit présent dans les versions 2 de python)

et puis faire :
image = Image.open("nom_du_fichier_image")
imageTk = ImageTk.PhotoImage(image)

Ensuite il faut créer le caneva:
caneva = Canvas(fenetre,width=largeurFenetre,height=hauteurFenetre,bg=couleurFond) par ex.(y'a d'autre options)
caneva.pack()

Il te faudra ensuite faire appel à la méthode du caneva pour dessiner(bliter) l'image dedans:

idTkImage = caneva.create_image(coordX,coordY,image=imageTk)
fenetre.update()

tu peux aussi choisir le point d'encrage(par defaut coin sup gauche) et l'état(visible ou pas) sachant que tout ceci reste modifiable grâce à une méthode du caneva:
caneva.itemconfigure(idTkImage,image=nouvelle_image) par ex.
si tu veux déplacer l'image:
caneva.coords(idTkImage,nvlleCoordX,nvlleCoordY)


En espérant avoir été clair...

A disposition.Mints






--
2
cr03 Messages postés 3 Date d'inscription samedi 21 juin 2014 Statut Membre Dernière intervention 22 juin 2014
Modifié par cr03 le 21/06/2014 à 23:03
Bonjour, merci beaucoup de m'avoir répondu ,
Je suis au début de l'apprentissage de Python donc excusez moi si je pose de drôle de questions ,

def fen_B() :

imageTk=PhotoImage(file="logo-mondial-2014.gif")
image = Image.open("logo-mondial-2014.gif")
imageTk = ImageTk.PhotoImage(image)
cavena=cavenas(Mafenetre_B, anchor=W, width=800, height=300, bg="yellow")
caneva.pack()
idTkImage=cavena_image(800, 300, image=imageTk)
fenetre.update()

Mafenetre_B=Tk()
Mafenetre_B.geometry("800x300")
Mafenetre_B.title('Groupe B')
cavena=cavenas(Mafenetre_B, width=800, height=300, bg="yellow")
caneva.pack()
idTkImage=cavena_image(800, 300, image=imageTk)
fenetre.update()
ent=Label(Mafenetre_B, anchor=W, text='Match Date et Heure Equipe 1 Equipe 2 Resultat',bg="cyan",height=2,width=200)
ent2=Label(Mafenetre_B, anchor=W, text='B1 13 juin, 21h0 Espagne Hollande '+match_B1() ,bg="yellow",height=2,width=200)
ent3=Label(Mafenetre_B, anchor=W, text='B2 13 juin, 23h0 Chili Australie '+match_B2() ,bg="yellow",height=2,width=200)
ent4=Label(Mafenetre_B, anchor=W, text='B3 18 juin, 18h00 Australie Hollande '+match_B3() ,bg="yellow",height=2,width=200)
ent5=Label(Mafenetre_B, anchor=W, text='B4 18 juin, 21h00 Espagne Chili '+match_B4() ,bg="yellow",height=2,width=200)
ent6=Label(Mafenetre_B, anchor=W, text='B5 23 juin, 18h00 Australie Espagne '+match_B5() ,bg="yellow",height=2,width=200)
ent7=Label(Mafenetre_B, anchor=W, text='B6 23 juin, 18h00 Hollande Chili '+match_B6() ,bg="yellow",height=2,width=200)
ent.pack(side=TOP)
ent2.pack(side=TOP)
ent3.pack(side=TOP)
ent4.pack(side=TOP)
ent5.pack(side=TOP)
ent6.pack(side=TOP)
ent7.pack(side=TOP)

J'ai crée cette fenêtre elle marche bien je n'ai pas tout mit la , j'ai essayé votre méthode mais je ne pense pas avoir compris l'idée :/
0
Rejoignez-nous