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...' |
mSem resumo de edição Etiqueta: visualeditor |
||
| Linha 1: | Linha 1: | ||
15/06/2017:<syntaxhighlight lang="python3" line="1"> | |||
from tkinter import * | from tkinter import * | ||
from functools import partial | from functools import partial | ||
| Linha 10: | Linha 11: | ||
tabela.delete(END, END) | tabela.delete(END, END) | ||
def clickcarrinho(botao): | def clickcarrinho(botao): | ||
print(botao["text"]) | |||
class Produto(object): | 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 | |||
----------------------------------------------------------------------------------------------------------------------- | |||
CREATE | |||
def clickcriar(): | 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() | |||
----------------------------------------------------------------------------------------------------------------------- | |||
RECOUVER | |||
def clickpesquisa(): | 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" | |||
----------------------------------------------------------------------------------------------------------------------- | |||
UPDATE | |||
def clickeditar(ANCHOR): | 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() | |||
----------------------------------------------------------------------------------------------------------------------- | |||
tabela = Listbox(janela, selectmode = EXTENDED, width = 73) | tabela = Listbox(janela, selectmode = EXTENDED, width = 73) | ||
| Linha 168: | Linha 169: | ||
btntabela.place(x = 525, y = 5) | btntabela.place(x = 525, y = 5) | ||
CREATE | |||
btncriar = Button(janela, text = "Adicionar novo produto", command = clickcriar).place(x = 355, y = 5) | btncriar = Button(janela, text = "Adicionar novo produto", command = clickcriar).place(x = 355, y = 5) | ||
| Linha 175: | Linha 176: | ||
carrinho["command"] =partial(clickcarrinho, carrinho) | carrinho["command"] =partial(clickcarrinho, carrinho) | ||
RECOUVER | |||
pesquisa = Entry(janela, width = 13) | pesquisa = Entry(janela, width = 13) | ||
pesquisa.place(x = 5, y = 10) | pesquisa.place(x = 5, y = 10) | ||
| Linha 184: | Linha 185: | ||
metodo.set("Nome") | metodo.set("Nome") | ||
metodopesquisa = OptionMenu(janela, metodo, "Nome", "Codigo").place(x = 130, y = 5) | metodopesquisa = OptionMenu(janela, metodo, "Nome", "Codigo").place(x = 130, y = 5) | ||
UPDATE | |||
btneditar = Button(janela, text = "Editar", command = lambda tabela = tabela: clickeditar(ANCHOR)).place(x = 5, y = 300) | btneditar = Button(janela, text = "Editar", command = lambda tabela = tabela: clickeditar(ANCHOR)).place(x = 5, y = 300) | ||
janela.mainloop() | janela.mainloop() | ||
</syntaxhighlight> | |||
Edição das 01h52min de 17 de junho de 2017
15/06/2017:<syntaxhighlight lang="python3" line="1"> 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
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()
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"
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()
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)
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)
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) UPDATE
btneditar = Button(janela, text = "Editar", command = lambda tabela = tabela: clickeditar(ANCHOR)).place(x = 5, y = 300)
janela.mainloop() </syntaxhighlight>