cadastro de membros com foto
import tkinter as tk
from tkinter import filedialog, messagebox
from PIL import Image, ImageTk
membros = []
def selecionar_foto():
caminho = filedialog.askopenfilename(filetypes=[("Imagens", "*.jpg *.png *.jpeg")])
if caminho:
imagem = Image.open(caminho)
imagem.thumbnail((100, 100))
foto = ImageTk.PhotoImage(imagem)
foto_label.config(image=foto)
foto_label.image = foto
foto_label.caminho = caminho
def cadastrar():
nome = nome_entry.get()
email = email_entry.get()
foto = getattr(foto_label, 'caminho', None)
if not nome or not email or not foto:
messagebox.showwarning("Campos obrigatórios", "Preencha todos os campos e selecione uma foto.")
return
membros.append({"nome": nome, "email": email, "foto": foto})
messagebox.showinfo("Sucesso", f"{nome} cadastrado com sucesso!")
nome_entry.delete(0, tk.END)
email_entry.delete(0, tk.END)
foto_label.config(image='')
foto_label.image = None
foto_label.caminho = None
# Interface
root = tk.Tk()
root.title("Cadastro de Membros")
tk.Label(root, text="Nome:").grid(row=0, column=0, sticky="e")
nome_entry = tk.Entry(root)
nome_entry.grid(row=0, column=1)
tk.Label(root, text="Email:").grid(row=1, column=0, sticky="e")
email_entry = tk.Entry(root)
email_entry.grid(row=1, column=1)
tk.Button(root, text="Selecionar Foto", command=selecionar_foto).grid(row=2, column=0, columnspan=2)
foto_label = tk.Label(root)
foto_label.grid(row=3, column=0, columnspan=2)
tk.Button(root, text="Cadastrar", command=cadastrar).grid(row=4, column=0, columnspan=2)
root.mainloop()