Bonjour,

L'orsque je charge mes images hors de la fonction "foncHelpPage01", les images apparaissent dans mon canevas, si les charges dans la fonctions, elles n'apparaissent pas, sur un site il est expliqué que les images apparaissent puis disparaissent tellement vite que l'on n'a pas le temps de le voir à l'oeil nu.
Voici le code juste pour cette fonction pour ne pas mettre 500 lignes :

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
def foncHelpPage01():
    #   *********************
    #   Création HELP PAGE 01
    #   *********************
    #   Chargement des images
 
    PHOTO_HELP01_1 = PhotoImage(file="Help_01_a.png")
    PHOTO_HELP01_2 = PhotoImage(file="Help_01_b.png")
    PHOTO_HELP01_3 = PhotoImage(file="Help_01_c.png")
 
    #   Création de la fenêtre Help
    fenHelp = Toplevel()
    fenHelp.title("Help")
    fenHelp.configure(bg="Tan")
    #   Création objLabelHelp01 et 02
    objHelpLabel01 = Label(fenHelp, text="Choix de la liste des codes", bg="Tan")
    #   Height = Nb de lignes en hauteur, si pas précisée elle s'ajuste toute seule, width = largeur en nb de caractères
    objHelpLabel02 = Label(fenHelp, text="\n     Commencez par attribuer un nom pour chacune des listes dont vous avez besoin,\n \
    Exemples : Code professionels, Code sites web ect...) via le menu MODIFICATION.\n \
    Vous pouvez par ce biais changer le nom d'une liste sans modifier les noms de codes.\n \n \
    Les listes (1) donnerons le choix des sous-menus dans la liste déroulante (2).\n \
    Le menu REINITIALISATION permet de remettre à zéros une liste de votre choix :\n \
    ATTENTION, cela supprimera tous les codes de cette liste.\n", bg="Tan", font=("Helvetica"), fg="Black", justify =("left"))
 
    #   Création photo01
    objHelpCan01 = Canvas(fenHelp, bg='dark grey', height=106, width=470)
    objHelpCan01.create_image(235, 53, image=PHOTO_HELP01_1)    #   Division par 2 de la taille pour centrer : 470/2 = 235
    #   Création photo02
    objHelpCan02 = Canvas(fenHelp, bg='dark grey', height=47, width=119)
    objHelpCan02.create_image(60, 23, image=PHOTO_HELP01_2)
    #   Création photo03
    objHelpCan03 = Canvas(fenHelp, bg='dark grey', height=47, width=119)
    objHelpCan03.create_image(60, 23, image=PHOTO_HELP01_3)
 
    #   Création Bouton Suivant
    objHelpBoutSuiv =Button(fenHelp, image=PHOTO8, command=foncHelpPage02, bg="Tan")
    #   Création Bouton Quit
    objHelpBoutQuit =Button(fenHelp, image=PHOTO4, command=fenHelp.destroy, bg="Tan")
    #   positionnements
    objHelpLabel01.grid(row=0)
    objHelpLabel02.grid(row=1)
 
    objHelpCan01.grid(row=2)
    objHelpCan02.grid(row=4)
    objHelpCan03.grid(column=2, row=4)
 
    objHelpBoutSuiv.grid(row=5, sticky=W)
    objHelpBoutQuit.grid(row=5, sticky=E)

Donc cela fonctionne si je retire les 3 lignes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
    PHOTO_HELP01_1 = PhotoImage(file="Help_01_a.png")
    PHOTO_HELP01_2 = PhotoImage(file="Help_01_b.png")
    PHOTO_HELP01_3 = PhotoImage(file="Help_01_c.png")
et que je les places avant l'appel à la fonction, mon problème est que cela réserve de la mémoire alors que ces images ne sont que pour une seule fenêtre d'info, je voudrais les charger seulement si on clique sur help et les décharger dès que l'on ferme cette fenêtre.