from tkinter import *
from tkinter import messagebox
root = Tk()
root.geometry("400x500")
root.resizable(0, 0)
root.title("Simulador de Fila")
fila = []
def adicionar_na_fila():
nome = entrada_nome.get().strip()
if nome:
fila.append(nome)
atualizar_fila()
entrada_nome.delete(0, END)
else:
messagebox.showwarning("Aviso", "Digite um nome válido!")
def atender():
if fila:
atendido = fila.pop(0)
atualizar_fila()
messagebox.showinfo("Atendimento", f"{atendido} está sendo atendido!")
else:
messagebox.showwarning("Aviso", "Não há ninguém na fila para atender!")
def limpar_fila():
global fila
if messagebox.askyesno("Confirmação", "Deseja limpar a fila?"):
fila = []
atualizar_fila()
def atualizar_fila():
texto_fila.config(state=NORMAL)
texto_fila.delete(1.0, END)
if fila:
texto_fila.insert(END, "\n".join(f"{i+1}. {nome}" for i, nome in enumerate(fila)))
else:
texto_fila.insert(END, "Fila vazia")
texto_fila.config(state=DISABLED)
titulo = Label(root, text="Simulador de Fila", font=("Arial", 18, "bold"))
titulo.place(relx=0.15, rely=0.05)
Nome_pessoa = Label(root, text="Nome:", font=("Arial", 12))
Nome_pessoa.place(relx=0.05, rely=0.2, relwidth=0.2)
entrada_nome = Entry(root, font=("Arial", 12))
entrada_nome.place(relx=0.3, rely=0.2, relwidth=0.5)
btn_adicionar = Button(root, text="Adicionar", font=("Arial", 12), command=adicionar_na_fila)
btn_adicionar.place(relx=0.3, rely=0.3, relwidth=0.4)
texto_fila = Text(root, height=15, width=40, font=("Arial", 12), state=DISABLED)
texto_fila.place(relx=0.05, rely=0.4, relwidth=0.9)
btn_atender = Button(root, text="Atender", font=("Arial", 12), bg="green", fg="white", command=atender)
btn_atender.place(relx=0.1, rely=0.8, relwidth=0.35)
btn_limpar = Button(root, text="Limpar Fila", font=("Arial", 12), bg="red", fg="white", command=limpar_fila)
btn_limpar.place(relx=0.55, rely=0.8, relwidth=0.35)
btn_sair = Button(root, text="Sair", font=("Arial", 12), command=root.destroy)
btn_sair.place(relx=0.35, rely=0.9, relwidth=0.3)
root.mainloop()
Comentários
Enviar um comentário