from tkinter import *
from tkinter import ttk
root=Tk()
class appconverter():
def __init__(self):
self.root = root
self.janela()
self.frames_da_janela()
self.widgets_frame1()
self.Menus()
root.mainloop()
def janela(self):
self.root.title("Cavalos-Vapor para watts ou vice-versa ")
self.root.configure(background='#1e3743')
self.root.geometry("500x250")
self.root.resizable(0,0)
def frames_da_janela(self):
self.frame_1 = Frame(self.root, bd=4,
bg='#dfe3ee',
highlightbackground='#759fe6',
highlightthickness=2)
self.frame_1.place(relx=0.02, rely=0.02,
relwidth=0.96, relheight=0.96)
def widgets_frame1(self):
self.abas = ttk.Notebook(self.frame_1)
self.watts_para_cavalos_vapor= Frame(self.abas)
self.cavalos_vapor_para_watts = Frame(self.abas)
self.watts_para_cavalos_vapor.configure(background="#dfe3ee")
self.cavalos_vapor_para_watts.configure(background="#dfe3ee")
self.abas.add(self.watts_para_cavalos_vapor, text="watts para cavalos-vapor")
self.abas.add(self.cavalos_vapor_para_watts, text="cavalos-vapor para watts")
self.abas.place(relx=0, rely=0, relwidth=0.98, relheight=0.98)
# watts para cavalos_vapor
self.watts = DoubleVar()
self.lb_watts = Label(self.watts_para_cavalos_vapor,
text="Watts "
,bg='#dfe3ee', fg='#107db2', font=("Arial","15","bold"))
self.lb_watts.place(relx=0.25, rely=0.1)
self.watts_entry = Entry(self.watts_para_cavalos_vapor,
textvariable=self.watts,
justify='center',font=("Arial","15","bold"))
self.watts_entry.place(relx=0.45, rely=0.1, relwidth=0.25)
self.bt_calcular1 = Button(self.watts_para_cavalos_vapor, text="Calcular",
bd=2,bg='#107db2', fg='white',
font=('verdana', 12, 'bold'),
command=self.butaoclick1)
self.bt_calcular1.place(relx=0.3, rely=0.3, relwidth=0.45, relheight=0.2)
self.resultadocavalos_vapor = StringVar()
self.resultado1 = Label(self.watts_para_cavalos_vapor, textvariable=self.resultadocavalos_vapor)
self.resultado1.place(relx=0.35, rely=0.7, relwidth=0.69)
self.lb_resultado1 = Label(self.watts_para_cavalos_vapor,
text="cavalos-vapor",font=("Arial","13","bold"),
bg='#dfe3ee', fg='#107db2')
self.lb_resultado1.place(relx=0.05, rely=0.7)
# cavalos_vapor para watts
self.cavalos_vapor = DoubleVar()
self.lb_cavalos_vapor = Label(self.cavalos_vapor_para_watts,
text="Cavalos-vapor",
bg='#dfe3ee', fg='#107db2', font=("Arial","15","bold"))
self.lb_cavalos_vapor.place(relx=0.15, rely=0.15)
self.cavalos_vapor_entry = Entry(self.cavalos_vapor_para_watts,
textvariable=self.cavalos_vapor,
justify='center',font=("Arial","15","bold"))
self.cavalos_vapor_entry.place(relx=0.55, rely=0.15, relwidth=0.25)
# Butão de Calcular
self.bt_calcular2 = Button(self.cavalos_vapor_para_watts,text="Calcular", bd=2,bg='#107db2',
fg='white',
font=('verdana', 12, 'bold')
,command=self.butaoclick2)
self.bt_calcular2.place(relx=0.3, rely=0.38, relwidth=0.45, relheight=0.2)
# Resultado
self.resultadowattts = StringVar()
self.resultado2 = Label(self.cavalos_vapor_para_watts,
textvariable=self.resultadowattts,font=("Arial","10"))
self.resultado2.place(relx=0.2, rely=0.8, relwidth=0.7)
self.lb_resultado2 = Label(self.cavalos_vapor_para_watts,
text="Watts",bg='#dfe3ee',
fg='#107db2',font=("Arial","13","bold"))
self.lb_resultado2.place(relx=0.05, rely=0.8)
def butaoclick1(self):
w = self.watts.get()
# 1 cavalo-vapor (HP) é igual a 745.7 watts
hp = w / 745.7
hparr = round(hp,2)
mensagem = f"{w} watts é igual a {hparr} cavalos-vapor (HP)."
return self.resultadocavalos_vapor.set(mensagem)
def butaoclick2(self):
# 1 cavalo-vapor (HP) é igual a 745.7 watts
hp = self.cavalos_vapor.get()
watts = hp * 745.7
wattsarr = round(watts,2)
mensagem = f"{hp} cavalos-vapor (HP) é igual a {wattsarr} watts"
return self.resultadowattts.set(mensagem)
def Quit(self):
self.root.destroy()
def Menus(self):
menubar = Menu(self.root)
self.root.config(menu=menubar)
filemenu = Menu(menubar)
menubar.add_cascade(label="Opções", menu=filemenu)
filemenu.add_command(label="Sair", command=self.Quit)
appconverter()