Bonjour à tous,

Dans le cadre d'un projet d'etude, j'ai un code qui génère une fenêtre tkinter et je veut la capturer dans une image de format "jpg".
Est ce que c'est possible? et comment le faire svp !!!

ci-dessous le 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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
 
import turtle                    # importer la bibio turtle
import time
import sys
from collections import deque
 
wn = turtle.Screen()               # définir la fenetre de travail
wn.bgcolor("deep sky blue")         # définir la couleur d'arrière-plan
wn.title("trouver une cible sur une carte")
wn.setup(1300,700)                  # configurer les dimensions de la fenêtre
#hideturtle(wn)
 
# une classe pour la carte
class carte(turtle.Turtle):               # définir une classe pour la carte
    def __init__(self):
        turtle.Turtle.__init__(self)
        self.shape("square")            # la forme d'une unité d'obstacle
        self.color("white")             # colour of the turtle
        self.penup()                    # soulevez le stylo pour qu'il ne laisse pas de trace
        self.speed(0)
 
# la class pour la cible
class Green(turtle.Turtle):
    def __init__(self):
        turtle.Turtle.__init__(self)
        self.shape("circle")
        self.color("green")
        self.penup()
        self.speed(0)
 
class Blue(turtle.Turtle):
    def __init__(self):
        turtle.Turtle.__init__(self)
        self.shape("square")
        self.color("blue")
        self.penup()
        self.speed(0)
 
 
# this is the class for the yellow or turtle
 
class Red(turtle.Turtle):
    def __init__(self):
        turtle.Turtle.__init__(self)
        self.shape("circle")
        self.color("red")
        self.penup()
        self.speed(0)
 
class Yellow(turtle.Turtle):
    def __init__(self):
        turtle.Turtle.__init__(self)
        self.shape("square")
        self.color("yellow")
        self.penup()
        self.speed(0)
 
 
 
grid = [
"++++++++++++++++++++++++++++++++++++++++++++++++++++",
"+s          +++++++++++++      ++++++++++          +",
"++++++++++  +++++++++++++      ++++++++++          +",
"++++++++++  +++++++++++++      ++++++++++          +",
"++++++++++  +++++++++++++                          +",
"++++++++++  +++++++++++++             ++++++++++++++",
"++++++++++                            ++++++++++++++",
"++++++++++     +++++++++++++++++++    ++++++++++++++",
"++++++++++     +++++++++++++++++++    ++++++++++++++",
"++++++++++     +++++++++++++++++++    ++++++++++++++",
"++++++++++     +++++++++++++++++++    ++++++++++++++",
"++++++++++     +++++++++++++++++++    ++++++++++++++",
"+              +++++++++++++++++++                 +",
"+              +++++++++++++++++++                 +",
"+              +++++++++++++++++++                 +",
"+ ++++++++++++++++++++++++++++++++                 +",
"+ ++++++++++++++++++++++++++++++++                 +",
"+ ++++++++++++++++++++++++++++++++   +++++++++++   +",
"+ ++++++++++++++++++++++++++++++++   +++++++++++   +",
"+                         ++++++++++++++++++++++  e+",
"+                         ++++++++++++++++++++++   +",
"+                         +++++++++++              +",
"+                         +++++++++++              +",
"+                                                  +",
"++++++++++++++++++++++++++++++++++++++++++++++++++++",
 ]
 
 
def setup_carte(grid):                          # définir une fonction appelée setup_carte
    global start_x, start_y, end_x, end_y      # les variables globales pour les emplacements de début et de fin
    for y in range(len(grid)):                 # lire dans la carte ligne par ligne
        for x in range(len(grid[y])):          # lire chaque cellule dans la ligne
            character = grid[y][x]             # attribuer la variable "character" à l'emplacement x et y de la grille
            screen_x = -588 + (x * 24)         # déplacer vers l'emplacement x sur l'écran à -588
            screen_y = 288 - (y * 24)          # déplacer vers l'emplacement y de l'écran à partir de 288
 
            if character == "+":
                carte.goto(screen_x, screen_y)         # déplacer le stylo à l'emplacement x et y
                carte.stamp()                          # sauvgarder les obstacles sur la carte
                walls.append((screen_x, screen_y))    # ajouter des coordonnées à la liste (tableaux) des murs
 
            if character == " " or character == "e":
                path.append((screen_x, screen_y))     # ajouter " " et e à la liste des chemins
 
            if character == "e":
                green.color("purple")
                green.goto(screen_x, screen_y)       
                end_x, end_y = screen_x,screen_y     # affecter des variables d'emplacements finaux à end_x et end_y
                green.stamp()
                green.color("green")
 
            if character == "s":
                start_x, start_y = screen_x, screen_y  # affecter des variables d'emplacements de départ à start_x et start_y
                red.goto(screen_x, screen_y)
 
 
def endProgram():
    #wn.exitonclick()
    sys.exit()
 
 
# setup classes
carte = carte()
red = Red()
#blue = Blue()
green = Green()
#yellow = Yellow()
 
# définir lists (tableaux)
walls = []
path = []
 
 
 
# main
 
setup_carte(grid)
time.sleep(10)
Merci d'avance.