Easy Buy

Revisão de 12h08min de 16 de junho de 2017 por Guilherme Tafelli (discussão | contribs) (Criou página com 'from tkinter import * from functools import partial janela = Tk() janela.geometry("600x600") v = [] tabela = Listbox(janela, selectmode = EXTENDED, width = 73) tabela.insert...')
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)

from tkinter import * from functools import partial

janela = Tk() janela.geometry("600x600") v = []

tabela = Listbox(janela, selectmode = EXTENDED, width = 73) tabela.insert(END, "asdasd") tabela.delete(END, END) def clickcarrinho(botao):

   print(botao["text"])

class Produto(object):

   def __init__(self, name, qtd, preco, marca, codigo):
       self.s = {"nome" : name, "qnt" : qtd, "marca" :  marca, "preco" : preco, "codigo" : codigo}
   def muda(self, name, qtd, forn, preco):
       self.s["nome"] = name
       self.s["qnt"] = qtd
       self.s["fornecedor"] = forn
       self.s['preco'] = preco
  1. -----------------------------------------------------------------------------------------------------------------------
  2. CREATE

def clickcriar():

   def clickadd():
       nome = inname.get()
       quantidade = inqnt.get()
       preco = inpreco.get()
       marca = inmarca.get()
       codigo = incodigo.get()
       
       tabela.insert(END, nome)
       
       arquivo = open("produtos.txt", "a")
       lista = []
       lista.append(nome + " ")
       lista.append(quantidade +" ")
       lista.append(preco + " ")
       lista.append(marca + " ")
       lista.append(codigo)
       
       arquivo.writelines(lista)
       arquivo.write("\n")
       arquivo.close()
       
       v.append(Produto(nome, quantidade, preco, marca, codigo))
       janelacriar.destroy()
       return
   janelacriar = Toplevel()
   janelacriar.geometry("300x200")
   janelacriar.title("Novo produto")
   
   nome = Label(janelacriar, text = "Nome do produto:").place(x = 5, y = 5)
   inname = Entry(janelacriar)
   inname.place(x = 120, y = 5)
   
   qnt = Label(janelacriar, text = "Quantidade:").place(x = 5, y = 30)
   inqnt = Spinbox(janelacriar, from_ = 0, to = 1000)
   inqnt.place(x = 120, y = 30)
   
   preco = Label(janelacriar, text = "Preço:               R$").place(x = 5, y = 55)
   inpreco = Entry(janelacriar)
   inpreco.place(x = 120, y = 55)
   
   marca = Label(janelacriar, text = "Marca/Fornecedor:").place(x = 5, y = 80)
   inmarca = Entry(janelacriar)
   inmarca.place(x = 120, y = 80)
   codigo = Label(janelacriar, text = "Codigo do produto:").place(x = 5, y = 105)
   incodigo = Entry(janelacriar)
   incodigo.place(x = 120, y = 105)


   btnadd = Button(janelacriar, text = "Confirmar", command = clickadd).place(x = 200, y = 160)
   janelacriar.mainloop()
  1. -----------------------------------------------------------------------------------------------------------------------
  2. RECOUVER

def clickpesquisa():

   if metodo.get() == "Nome":
       m = 0
   else:
       m = 4 
   pesquisar = pesquisa.get()
   arquivo = open("produtos.txt", "r")
   produtos = arquivo.readlines()
   print(type(produtos))
   for i in produtos:
       lista = i.split()
       if lista[m] == pesquisar:
           status["text"] = pesquisar + " encontrado"
           status.place(x = 5, y = 30)
           status["fg"] = "blue" 
           print("encontrado")
           break
       print(lista)
   else:
       status["text"] = pesquisar + " não encontrado"
       status.place(x = 5, y = 30)
       status["fg"] = "red" 
  1. -----------------------------------------------------------------------------------------------------------------------
  2. UPDATE

def clickeditar(ANCHOR):

   def clickadd():
       nome = inname.get()
       quantidade = inqnt.get()
       preco = inpreco.get()
       marca = inmarca.get()
       codigo = incodigo.get()
       
       arquivo = open("produtos.txt", "r")
       produtos = arquivo.readlines()
       arquivo.close()
       
       arquivo = open("produtos.txt", "w")
       
       for i in produtos:
           lista = i.split()
           if lista[0] == pesquisa:
               arquivo.writelines(nome + " " + quantidade + " " + preco + " " + marca+ " " + codigo+ "\n")
           else:
               arquivo.writelines(i)
       janelaeditar.destroy()
      
       
   janelaeditar = Toplevel()
   janelaeditar.geometry("300x200")
   janelaeditar.title("Editar")
   
   nome = Label(janelaeditar, text = "Nome do produto:").place(x = 5, y = 5)
   inname = Entry(janelaeditar)
   inname.place(x = 120, y = 5)
   
   qnt = Label(janelaeditar, text = "Quantidade:").place(x = 5, y = 30)
   inqnt = Spinbox(janelaeditar, from_ = 0, to = 1000)
   inqnt.place(x = 120, y = 30)
   
   preco = Label(janelaeditar, text = "Preço:               R$").place(x = 5, y = 55)
   inpreco = Entry(janelaeditar)
   inpreco.place(x = 120, y = 55)
   
   marca = Label(janelaeditar, text = "Marca/Fornecedor:").place(x = 5, y = 80)
   inmarca = Entry(janelaeditar)
   inmarca.place(x = 120, y = 80)
   codigo = Label(janelaeditar, text = "Codigo do produto:").place(x = 5, y = 105)
   incodigo = Entry(janelaeditar)
   incodigo.place(x = 120, y = 105)
   pesquisa = tabela.get(ANCHOR)
   for i in v:
       if i.s["nome"] == pesquisa:
           inname.insert(END, i.s["nome"])
           inqnt.insert(0, i.s["qnt"])
           inpreco.insert(END, i.s["preco"])
           inmarca.insert(END, i.s["marca"])
           incodigo.insert(END, i.s["codigo"])
   btnadd = Button(janelaeditar, text = "Confirmar", command = clickadd).place(x = 200, y = 160)
   janelaeditar.mainloop()
  1. -----------------------------------------------------------------------------------------------------------------------

tabela = Listbox(janela, selectmode = EXTENDED, width = 73) tabela.place(x = 5, y = 50) btntabela = Button(janela, text = "Delete", command = lambda tabela = tabela: tabela.delete(ANCHOR)) btntabela.place(x = 525, y = 5)

  1. CREATE

btncriar = Button(janela, text = "Adicionar novo produto", command = clickcriar).place(x = 355, y = 5)

carrinho = Button(janela, width =20, text = "Meu carrinho") carrinho.place(x = 200, y = 210) carrinho["command"] =partial(clickcarrinho, carrinho)

  1. RECOUVER

pesquisa = Entry(janela, width = 13) pesquisa.place(x = 5, y = 10) btpesquisa = Button(janela, width = 10, height = 1, text = "pesquise", command = clickpesquisa) btpesquisa.place(x = 220, y =5) status = Label(janela) metodo = StringVar(janela) metodo.set("Nome") metodopesquisa = OptionMenu(janela, metodo, "Nome", "Codigo").place(x = 130, y = 5)

  1. UPDATE

btneditar = Button(janela, text = "Editar", command = lambda tabela = tabela: clickeditar(ANCHOR)).place(x = 5, y = 300)

janela.mainloop()