From 6c3c33961515ee659dc9c4ce45ee0335c5a84994 Mon Sep 17 00:00:00 2001 From: Mylloon Date: Sun, 28 Nov 2021 12:28:03 +0100 Subject: [PATCH] Add a button to select easily an image --- img/dossier.gif | 3 +++ main.py | 12 ++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 img/dossier.gif diff --git a/img/dossier.gif b/img/dossier.gif new file mode 100644 index 0000000..141596b --- /dev/null +++ b/img/dossier.gif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81e49051fc16a694ec2f368b675700317bc9474dc3f95bdec4bac6d188d3b8ae +size 322 diff --git a/main.py b/main.py index 23760e6..9c75c4e 100644 --- a/main.py +++ b/main.py @@ -1,6 +1,7 @@ from tkinter import IntVar, Checkbutton, LabelFrame, PhotoImage, Scrollbar, Listbox, Entry, Button, Label, Frame, Tk, Toplevel from tkinter.ttk import Combobox from tkinter.messagebox import showerror, showinfo, showwarning, askyesno +from tkinter.filedialog import askopenfile from re import sub from users import Utilisateurs # import de mon fichier pour gérer la base de donnée @@ -14,6 +15,7 @@ class GesMag: self.parent.resizable(False, False) # empêche la fenêtre d'être redimensionnée self.f = Frame(self.parent) # `Frame` affiché à l'écran self.imagesStock = [] # liste qui va contenir nos images pour l'affichage du stock + self.dossierImage = PhotoImage(file = "img/dossier.gif") # image pour l'icone de selection def demarrer(self) -> None: """Lance le programme GesMag.""" @@ -397,6 +399,16 @@ class GesMag: Label(enfant, text="Image :").grid(column=0, row=0, sticky='e') image = Entry(enfant) image.grid(column=1, row=0, sticky='w') + def ___selectionImage(): + """Fonction qui permet de choisir une image dans l'arborescence de fichiers de l'utilisateur.""" + try: + chemin = askopenfile(title="Choisir une image", filetypes=[("Image GIF", ".gif")]) + image.delete(0, "end") + image.insert(0, chemin.name) + except: + pass + + Button(enfant, image=self.dossierImage, command=___selectionImage).grid(column=1, row=0, sticky='e') # Type (ComboBox) Label(enfant, text="Type :").grid(column=0, row=1, sticky='e') type = Combobox(enfant, values=Stock().listeTypes())