commit ee86dfc6f65f869d3721bfcbb9b241753241ebc5 Author: massiniss.brahimi Date: Mon May 6 10:42:34 2024 +0200 tkinter_ sujet_ 5.py diff --git a/tkinter_ sujet_ 5.py b/tkinter_ sujet_ 5.py new file mode 100644 index 0000000..db9f9b1 --- /dev/null +++ b/tkinter_ sujet_ 5.py @@ -0,0 +1,64 @@ +import tkinter as tk +import random + +window = tk.Tk() + +# Créer la zone de dessin +canvas = tk.Canvas(window, width=400, height=300) +canvas.pack() + +# Définir les couleurs +couleurs = ['red', 'green', 'blue', 'yellow', 'grey'] + +# Initialiser une variable pour contrôler si les carrés doivent être effacés +effacer = False + +# Initialiser un compteur de carrés +nombre_carrés = 0 +def dessiner_carré(): + # Vérifier si le nombre de carrés est supérieur à 20 + # Initialiser un compteur de carrés + nombre_carrés = 0 + if nombre_carrés >= 20: + tk.messagebox.showwarning("Avertissement", "t'abuse aussi !") + return + + + # Générer une taille et une position aléatoires + taille = random.randint(10, 30) + x = random.randint(0, 400 - taille) + y = random.randint(0, 300 - taille) + + # Générer une couleur aléatoire + couleur = random.choice(couleurs) + + # Dessiner le carré + canvas.create_rectangle(x, y, x + taille, y + taille, fill=couleur) + + # compteur de carrés + nombre_carrés += 1 + +# Créer le bouton pour dessiner un carré +bouton_dessiner_carré = tk.Button(window, text="Dessiner un carré", command=dessiner_carré) +bouton_dessiner_carré.pack() + +# Initialiser la couleur de fond de la zone de dessin en blanc +canvas.config(bg="white") + +# Définir la fonction pour effacer la zone de dessin +def effacer_zone_de_dessin(): + canvas.delete("all") + canvas.config(bg="white") + +# Créer le bouton pour effacer la zone de dessin +bouton_effacer = tk.Button(window, text="Effacer la zone de dessin", command=effacer_zone_de_dessin) +bouton_effacer.pack() + +# Définir la fonction pour effacer tous les carrés +def effacer_tous_les_carres(): + for i in canvas.find_all(): + canvas.delete(i) + canvas.config(bg="white") + +# Définir la boucle principale +window.mainloop() \ No newline at end of file