From 6bd0c7cf5880e20763feb3726168ff8e0865f7d1 Mon Sep 17 00:00:00 2001 From: "barraux.a" Date: Sun, 6 Feb 2022 16:01:39 +0100 Subject: [PATCH] foursytout --- main.py | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/main.py b/main.py index a5c2d54..4689eb3 100644 --- a/main.py +++ b/main.py @@ -1,5 +1,6 @@ import tkinter from tkinter import filedialog +import os class Terrain: def __init__(self): @@ -57,23 +58,27 @@ class Gui: self.menu.add_command(label=self.team.players[4], command=lambda: self.show_sub_menu(self.team.players[4])) def new(self, *event): + # créer un fichier vierge self.file = 'untitled.bbm' self.root.title = self.file def save(self, *event): - if self.file != 'untitled.bbm' and self.file != '': - with open(self.file, 'a') as f: - f.writelines(self.temp_data) - self.temp_data = '' - else: - self.file = tkinter.filedialog.askopenfilename(initialdir = "~", title = "Select a File", filetypes = (("BasketBall Match", "*.bbm"), ("all files", "*.*"))) - self.root.title(self.file) + # sauvegarde du fichier + if self.file == 'untitled.bbm' and self.file == '': + self.file = tkinter.filedialog.asksaveasfilename(initialdir = "~", title = "Select a File", filetypes = (("BasketBall Match", "*.bbm"), ("all files", "*.*"))) + with open(self.file, 'a') as f: + f.write(self.temp_data) + self.temp_data = '' + self.root.title(self.file) def browse_open(self, *event): - print('open') - self.file = tkinter.filedialog.askopenfilename(initialdir = "~", title = "Select a File", filetypes = (("BasketBall Match", "*.bbm"), ("all files", "*.*"))) + # ouvre un fichier + self.file = tkinter.filedialog.askopenfilename(initialdir = "~/Documents/python/basket", title = "Select a File", filetypes = (("BasketBall Match", "*.bbm"), ("all files", "*.*"))) + with open(self.file, 'r') as f: + f.read() self.root.title(self.file) + def context_menu(self, event): self.team.posx, self.team.posy = event.x, event.y self.coo = [event.x_root, event.y_root] @@ -95,8 +100,17 @@ class Gui: self.canvas.create_oval(self.team.posx-12, self.team.posy-12, self.team.posx+12, self.team.posy+12, fill='green') else: self.canvas.create_oval(self.team.posx-12, self.team.posy-12, self.team.posx+12, self.team.posy+12, fill='red') + if self.temp_data == '': + self.root.title(self.file+' *') self.temp_data += self.team.ac_player+' '+action+' '+str(score)+' '+str(self.team.posx)+' '+str(self.team.posy)+'\n' + def draw_actions(self, *event): + # dessine l'entièreté des actions + items = self.canvas.find_all() + while len(items) > 4: + self.canvas.delete(items[-1]) + items = self.canvas.find_all() + def draw_terrain(self): # ligne des 3 points self.canvas.create_arc(-self.terrain.three_points, self.terrain.height//2 - self.terrain.three_points, self.terrain.three_points, self.terrain.height - (self.terrain.height//2 - self.terrain.three_points),width=3, start=90, extent=-180) @@ -117,5 +131,6 @@ gui.root.bind("", gui.context_menu) gui.root.bind("", gui.save) gui.root.bind("", gui.browse_open) gui.root.bind("", gui.new) +gui.root.bind("", gui.draw_actions) gui.root.mainloop()