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("Bytes por Gigabyte e 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.Bytes_por_Gigabyte = Frame(self.abas)
self.Gigabyte_por_Bytes = Frame(self.abas)
self.Bytes_por_Gigabyte.configure(background="#dfe3ee")
self.Gigabyte_por_Bytes.configure(background="#dfe3ee")
self.abas.add(self.Bytes_por_Gigabyte, text="Bytes por Gigabyte")
self.abas.add(self.Gigabyte_por_Bytes, text="Gigabyte por Bytes")
self.abas.place(relx=0, rely=0, relwidth=0.98, relheight=0.98)
# Bytes por Gigabyte
self.Bytes = DoubleVar()
self.lb_Bytes = Label(self.Bytes_por_Gigabyte,
text="Bytes "
,bg='#dfe3ee', fg='#107db2', font=("Arial","15","bold"))
self.lb_Bytes.place(relx=0.25, rely=0.05)
self.Bytes_entry = Entry(self.Bytes_por_Gigabyte,
textvariable=self.Bytes,
justify='center',font=("Arial","15","bold"))
self.Bytes_entry.place(relx=0.5, rely=0.05, relwidth=0.35)
self.bt_calcular1 = Button(self.Bytes_por_Gigabyte, 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.resultado_gigabyte = StringVar()
self.resultado1 = Label(self.Bytes_por_Gigabyte, textvariable=self.resultado_gigabyte)
self.resultado1.place(relx=0.55, rely=0.7, relwidth=0.3)
self.lb_resultado1 = Label(self.Bytes_por_Gigabyte,
text="Gigabyte",font=("Arial","13","bold"),
bg='#dfe3ee', fg='#107db2')
self.lb_resultado1.place(relx=0.15, rely=0.7)
self.gigabyte = DoubleVar()
self.lb_gigabyte = Label(self.Gigabyte_por_Bytes,
text="Gigabyte",
bg='#dfe3ee', fg='#107db2', font=("Arial","15","bold"))
self.lb_gigabyte.place(relx=0.2, rely=0.15)
self.gigabyte_entry = Entry(self.Gigabyte_por_Bytes,
textvariable=self.gigabyte,
justify='center',font=("Arial","13","bold"))
self.gigabyte_entry.place(relx=0.5, rely=0.15, relwidth=0.25)
# Butão de Calcular
self.bt_calcular2 = Button(self.Gigabyte_por_Bytes,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.byte = StringVar()
self.resultado_Gigabyte = Label(self.Gigabyte_por_Bytes,
textvariable=self.byte,font=("Arial","13","bold"))
self.resultado_Gigabyte.place(relx=0.5, rely=0.8, relwidth=0.4)
self.lb_resultado2 = Label(self.Gigabyte_por_Bytes,
text="Byte",bg='#dfe3ee',
fg='#107db2',font=("Arial","13","bold"))
self.lb_resultado2.place(relx=0.2, rely=0.8)
def butaoclick1(self):
b = self.Bytes.get()
bytes_por_gigabyte = 1073741824
gigabytes = b / bytes_por_gigabyte
gigabytesarr = round(gigabytes,2)
return self.resultado_gigabyte.set(gigabytesarr)
def butaoclick2(self):
bytes_por_gigabyte = 1073741824 # 1 GB = 1.073.741.824 bytes
gig = self.gigabyte.get()
bytes2 = gig * bytes_por_gigabyte
self.byte.set(bytes2)
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()