#Taxa de Inoperacionalidade=(Tempo de Inatividade/Tempo Total)*100
from tkinter import *
# Inicializa a janela principal
root = Tk()
root.geometry("500x400")
root.resizable(0, 0)
root.config(bg="#103030")
root.title("Taxa de Inoperacionalidade")
# Título
titulo = Label(root, text="Taxa de Inoperacionalidade",
font=("Arial", "26", "bold"), bg="#103030", fg="#49e3e3")
titulo.place(relx=0.05, rely=0.05)
# Label para Tempo de Inatividade
texto_sub1 = Label(root, text="Tempo de Inatividade:",
font=("Arial", "19", "bold"), bg="#103030", fg="#49e3e3")
texto_sub1.place(relx=0.05, rely=0.25)
# Label para Tempo Total
texto_sub2 = Label(root, text="Tempo Total:",
font=("Arial", "19", "bold"), bg="#103030", fg="#49e3e3")
texto_sub2.place(relx=0.05, rely=0.45)
# Entrada para Tempo de Inatividade
Tempo_Inatividade = StringVar()
Tempo_Inatividade_entrada = Entry(root, textvariable=Tempo_Inatividade,
font=("Arial", "12", "bold"),
bg="white", fg="blue", justify='center')
Tempo_Inatividade_entrada.place(relx=0.6, rely=0.26, relwidth=0.3)
Tempo_Inatividade_entrada.focus()
# Entrada para Tempo Total
Tempo_Total = StringVar()
Tempo_Total_entrada = Entry(root, textvariable=Tempo_Total,
font=("Arial", "12", "bold"),
bg="white", fg="blue", justify='center')
Tempo_Total_entrada.place(relx=0.6, rely=0.46, relwidth=0.3)
# Função para limpar os campos de entrada e o resultado
def limpar():
Tempo_Total_entrada.delete(0, END)
Tempo_Inatividade_entrada.delete(0, END)
resultado_texto.config(text="")
# Função para calcular a taxa de inoperacionalidade
def app(event=None): # Adiciona um argumento padrão para eventos de teclado
try:
total = int(Tempo_Total.get())
Inatividade = int(Tempo_Inatividade.get())
Taxa_Inoperacionalidade = (Inatividade / total) * 100
mensagem = f"Taxa de Inoperacionalidade: {round(Taxa_Inoperacionalidade, 2)}%"
resultado_texto.config(text=mensagem, fg="green")
except ValueError:
resultado_texto.config(text="Erro de digitalização!", fg="red")
# Associa o evento de tecla Enter às entradas
Tempo_Inatividade_entrada.bind('<Return>', app)
Tempo_Total_entrada.bind('<Return>', app)
# Botão para calcular a taxa
but1 = Button(root, text="Mostrar", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=app)
but1.place(relx=0.1, rely=0.6, relwidth=0.25, relheight=0.1)
# Botão para limpar os campos
but_limpar = Button(root, text="Limpar", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=limpar)
but_limpar.place(relx=0.4, rely=0.6, relwidth=0.25, relheight=0.1)
# Botão para sair do aplicativo
but_sair = Button(root, text="Sair", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=root.destroy)
but_sair.place(relx=0.7, rely=0.6, relwidth=0.25, relheight=0.1)
# Label para mostrar o resultado
resultado_texto = Label(root, font=("Arial", 12, "bold"), bg="#cfe2f3")
resultado_texto.place(relx=0.05, rely=0.75, relwidth=0.9, relheight=0.2)
# Executa o loop principal da aplicação
root.mainloop()