from tkinter import *
from tkinter import ttk
root=Tk()
class app():
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("Trapézio")
self.root.configure(background='#1e3743')
self.root.geometry("500x600")
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.tarea = Frame(self.abas)
self.tperimetro = Frame(self.abas)
self.tarea.configure(background="#dfe3ee")
self.tperimetro.configure(background="#dfe3ee")
self.abas.add(self.tarea, text="Área")
self.abas.add(self.tperimetro, text="Perímetro")
self.abas.place(relx=0, rely=0, relwidth=0.98, relheight=0.98)
# Calcular a area do Trapézio
self.titulo1 = Label(self.tarea, text="Área do Trapézio", bg='#dfe3ee',
fg='#107db2', font=("Arial", "15", "bold"))
self.titulo1.place(relx=0.35, rely=0.05)
self.basemaior1 = DoubleVar()
self.lb_basemaior1 = Label(self.tarea,
text="Base Maior"
, bg='#dfe3ee', fg='#107db2', font=("Arial", "10", "bold"))
self.lb_basemaior1.place(relx=0.25, rely=0.2)
self.basemaior1_entry = Entry(self.tarea,
textvariable=self.basemaior1, justify='center')
self.basemaior1_entry.place(relx=0.55, rely=0.2, relwidth=0.25)
self.basemenor1 = DoubleVar()
self.lb_basemenor1 = Label(self.tarea,
text="Base Menor"
, bg='#dfe3ee', fg='#107db2', font=("Arial", "10", "bold"))
self.lb_basemenor1.place(relx=0.25, rely=0.3)
self.basemenor1_entry = Entry(self.tarea,
textvariable=self.basemenor1, justify='center')
self.basemenor1_entry.place(relx=0.55, rely=0.3, relwidth=0.25)
self.altura = DoubleVar()
self.lb_altura = Label(self.tarea,
text="Altura"
, bg='#dfe3ee', fg='#107db2', font=("Arial", "10", "bold"))
self.lb_altura.place(relx=0.25, rely=0.4)
self.altura_entry = Entry(self.tarea,
textvariable=self.altura, justify='center')
self.altura_entry.place(relx=0.55, rely=0.4, relwidth=0.25)
self.bt_calcular2 = Button(self.tarea, text="Calcular",
bd=2, bg='#107db2', fg='white',
font=('verdana', 15, 'bold'),
command=self.butaoclick1)
self.bt_calcular2.place(relx=0.3, rely=0.6, relwidth=0.4, relheight=0.1)
self.text_resultado2 = StringVar()
self.resultado2 = Label(self.tarea, textvariable=self.text_resultado2,
bg="#d9ead3", fg="#134f5c")
self.resultado2.place(relx=0.45, rely=0.8, relwidth=0.3)
self.lb_resultado2 = Label(self.tarea, text="Área",
bg='#dfe3ee', fg='#107db2', font=("arial", "12", "bold"))
self.lb_resultado2.place(relx=0.25, rely=0.8)
# Calcular a perimetro do Trapézio
self.titulo = Label(self.tperimetro,text="Perímetro do Trapézio",bg='#dfe3ee',
fg='#107db2',font=("Arial","15","bold"))
self.titulo.place(relx=0.35, rely=0.05)
self.basemaior = DoubleVar()
self.lb_basemaior = Label(self.tperimetro,
text="Base Maior"
,bg='#dfe3ee', fg='#107db2',
font=("Arial","10","bold"))
self.lb_basemaior.place(relx=0.25, rely=0.2)
self.basemaior_entry = Entry(self.tperimetro,
textvariable=self.basemaior,justify='center')
self.basemaior_entry.place(relx=0.55, rely=0.2, relwidth=0.25)
self.basemenor = DoubleVar()
self.lb_basemenor = Label(self.tperimetro,
text="Base Menor"
, bg='#dfe3ee', fg='#107db2', font=("Arial", "10", "bold"))
self.lb_basemenor.place(relx=0.25, rely=0.3)
self.basemenor_entry = Entry(self.tperimetro,
textvariable=self.basemenor, justify='center')
self.basemenor_entry.place(relx=0.55, rely=0.3, relwidth=0.25)
self.lado1 = DoubleVar()
self.lb_lado1 = Label(self.tperimetro,
text="Lado 1"
, bg='#dfe3ee', fg='#107db2',
font=("Arial", "10", "bold"))
self.lb_lado1.place(relx=0.25, rely=0.4)
self.lado1_entry = Entry(self.tperimetro,
textvariable=self.lado1, justify='center')
self.lado1_entry.place(relx=0.55, rely=0.4, relwidth=0.25)
self.lado2 = DoubleVar()
self.lb_lado2 = Label(self.tperimetro,
text="Lado 2"
, bg='#dfe3ee', fg='#107db2',
font=("Arial", "10", "bold"))
self.lb_lado2.place(relx=0.25, rely=0.5)
self.lado2_entry = Entry(self.tperimetro,
textvariable=self.lado2, justify='center')
self.lado2_entry.place(relx=0.55, rely=0.5, relwidth=0.25)
self.bt_calcular1 = Button(self.tperimetro, text="Calcular",
bd=2,bg='#107db2', fg='white',
font=('verdana',15 , 'bold'),
command=self.butaoclick2)
self.bt_calcular1.place(relx=0.3, rely=0.6, relwidth=0.4, relheight=0.1)
self.text_resultado1 = StringVar()
self.resultado1 = Label(self.tperimetro, textvariable=self.text_resultado1,bg="#d9ead3",
fg="#134f5c", font=("Arial", "14", "bold"))
self.resultado1.place(relx=0.45, rely=0.8, relwidth=0.3)
self.lb_resultado1 = Label(self.tperimetro, text="Perímetro",
bg='#dfe3ee', fg='#107db2',font=("arial","12","bold"))
self.lb_resultado1.place(relx=0.25, rely=0.8)
def butaoclick1(self):
bmaior = self.basemaior1.get()
bmenor = self.basemenor1.get()
h = self.altura.get()
d = (bmaior+bmenor)*h
a = (d/2)
arredondado = round(a,2)
return self.text_resultado2.set(arredondado)
def butaoclick2(self):
bmaior = self.basemaior.get()
bmenor = self.basemenor.get()
l1 = self.lado1.get()
l2 = self.lado2.get()
p = bmaior + bmenor + l1 + l2
return self.text_resultado1.set(p)
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)
app()