Salut!
Je me suis mis récemment au python, et voilà mon premier problème.
En fait, j'essaye de découper des images avec PIL (pas de problème) et de les afficher dans une fenêtre à l'intérieur d'un objet label.
Le problème, c'est qu'il ne peut y avoir qu'une seule image en même temps...quand il y en a une qui se créer, elle efface la précédente...
J'ai essayé de les placer dans un canevas, mais c'est toujours le même problème, donc je pense que l'erreur vient de ImageTk.PhotoImage

Les variables:
NBR_TILES_PER_LINE: 4
TILES_SIZE: 32

Mon code:
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
# -*- coding: iso-8859-1 -*-
from Tkinter import *
import ImageTk,Tkinter,Image,Pmw
 
fen = Tk()
 
onglets = Pmw.NoteBook(fen)
 
tilename = "Level3.png"
page = onglets.add("Niveau 3")
tiles = Image.open("./Tiles/"+tilename)
tileswidth,tilesheight = tiles.size
if (tileswidth*tilesheight)%TILES_SIZE>0:
    alert("Attention: le tile ayant été chargé ("+tilename+") ne possède pas les bonnes proportions par rapport aux valeures indiquées dans le fichier de configuration (./Includes/config.py)","erreur")
realnbrtiles = tileswidth/TILES_SIZE*tilesheight/TILES_SIZE
nbrtiles = realnbrtiles
canvaswidth = NBR_TILES_PER_LINE*TILES_SIZE
if nbrtiles%NBR_TILES_PER_LINE>0:
    nbrtiles = nbrtiles+NBR_TILES_PER_LINE-nbrtiles%NBR_TILES_PER_LINE
x1,y1 = 0,0
for t in range(0,3):
    tile = tiles.crop((x1,y1,x1+TILES_SIZE,y1+TILES_SIZE))
    tile = ImageTk.PhotoImage(tile)
    Label(page,image=tile).place(anchor=NW,x=x1,y=y1)
    x1=x1+TILES_SIZE
 
onglets.pack(side=LEFT,fill='both',expand=1,padx=10,pady=10)
 
fen.mainloop()
Merci d'avance!