mSem resumo de edição Etiqueta: visualeditor |
Sem resumo de edição Etiqueta: visualeditor |
||
| Linha 79: | Linha 79: | ||
janelacriar.mainloop() | janelacriar.mainloop() | ||
----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ||
RECOVER | |||
def clickpesquisa(): | def clickpesquisa(): | ||
if metodo.get() == "Nome": | if metodo.get() == "Nome": | ||
| Linha 176: | Linha 176: | ||
carrinho["command"] =partial(clickcarrinho, carrinho) | carrinho["command"] =partial(clickcarrinho, carrinho) | ||
RECOVER | |||
pesquisa = Entry(janela, width = 13) | pesquisa = Entry(janela, width = 13) | ||
pesquisa.place(x = 5, y = 10) | pesquisa.place(x = 5, y = 10) | ||
| Linha 186: | Linha 186: | ||
metodopesquisa = OptionMenu(janela, metodo, "Nome", "Codigo").place(x = 130, y = 5) | metodopesquisa = OptionMenu(janela, metodo, "Nome", "Codigo").place(x = 130, y = 5) | ||
UPDATE | UPDATE | ||
btneditar = Button(janela, text = "Editar", command = lambda tabela = tabela: clickeditar(ANCHOR)).place(x = 5, y = 300) | |||
janela.mainloop() | |||
</syntaxhighlight>16/06/2017<syntaxhighlight lang="python3" line="1"> | |||
from tkinter import ttk | |||
from tkinter import * | |||
from functools import partial | |||
janela = Tk() | |||
janela.geometry("600x600") | |||
v = [] | |||
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() | |||
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)) | |||
tabela.insert("",'end',text= "L1",values=(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() | |||
#----------------------------------------------------------------------------------------------------------------------- | |||
#RECOVER | |||
def clickpesquisa(): | |||
if metodo.get() == "Nome": | |||
m = 0 | |||
else: | |||
m = 4 | |||
pesquisar = pesquisa.get() | |||
arquivo = open("produtos.txt", "r") | |||
produtos = arquivo.readlines() | |||
for i in produtos: | |||
lista = i.split() | |||
if lista[m] == pesquisar: | |||
status["text"] = pesquisar + " encontrado" | |||
status.place(x = 5, y = 30) | |||
status["fg"] = "blue" | |||
flag = True | |||
break | |||
else: | |||
flag = False | |||
status["text"] = pesquisar + " não encontrado" | |||
status.place(x = 5, y = 30) | |||
status["fg"] = "red" | |||
if flag == True: | |||
tabelaprodutos = tabela.get_children() | |||
for i in tabelaprodutos: | |||
x = tabela.item(i, "value") | |||
if pesquisar == x[m]: | |||
tabela.selection_set(i) | |||
break | |||
#----------------------------------------------------------------------------------------------------------------------- | |||
#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) | |||
x = tabela.selection()[0] | |||
tabela.delete(x) | |||
tabela.insert("",'end',text= "L1",values=(nome, quantidade, preco, marca, codigo)) | |||
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) | |||
x = tabela.selection()[0] | |||
y = tabela.item(x, "values") | |||
pesquisa = y[0] | |||
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() | |||
#----------------------------------------------------------------------------------------------------------------------- | |||
#DELETE | |||
def delete(): | |||
x = tabela.selection()[0] | |||
y = tabela.item(x, "values") | |||
pesquisa = y[0] | |||
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(i) | |||
arquivo.close() | |||
x = tabela.selection()[0] | |||
tabela.delete(x) | |||
#----------------------------------------------------------------------------------------------------------------------- | |||
btntabela = Button(janela, text = "Delete", command = delete) | |||
btntabela.place(x = 525, y = 5) | |||
tabela = ttk.Treeview(janela, selectmode = 'browse', show = 'headings') | |||
tabela.place(x= 5, y = 50) | |||
tabela["columns"] = ("1", "2", "3", "4", "5") | |||
tabela['show'] = 'headings' | |||
tabela.column("1", width=118, anchor='c') | |||
tabela.column("2", width=118, anchor='c') | |||
tabela.column("3", width=118, anchor='c') | |||
tabela.column("4", width=118, anchor='c') | |||
tabela.column("5", width=116, anchor='c') | |||
tabela.heading("1", text="Nome") | |||
tabela.heading("2", text="Quantidade") | |||
tabela.heading("3", text="Preço") | |||
tabela.heading("4", text="Marca") | |||
tabela.heading("5", text="Codigo") | |||
#CREATE | |||
btncriar = Button(janela, text = "Adicionar novo produto", command = clickcriar).place(x = 355, y = 5) | |||
#RECOVER | |||
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) | btneditar = Button(janela, text = "Editar", command = lambda tabela = tabela: clickeditar(ANCHOR)).place(x = 5, y = 300) | ||
Edição das 01h56min 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()
RECOVER 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)
RECOVER 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>16/06/2017<syntaxhighlight lang="python3" line="1"> from tkinter import ttk from tkinter import * from functools import partial
janela = Tk() janela.geometry("600x600") v = []
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()
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))
tabela.insert("",'end',text= "L1",values=(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()
- -----------------------------------------------------------------------------------------------------------------------
- RECOVER
def clickpesquisa():
if metodo.get() == "Nome":
m = 0
else:
m = 4
pesquisar = pesquisa.get()
arquivo = open("produtos.txt", "r")
produtos = arquivo.readlines()
for i in produtos:
lista = i.split()
if lista[m] == pesquisar:
status["text"] = pesquisar + " encontrado"
status.place(x = 5, y = 30)
status["fg"] = "blue"
flag = True
break
else:
flag = False
status["text"] = pesquisar + " não encontrado"
status.place(x = 5, y = 30)
status["fg"] = "red"
if flag == True:
tabelaprodutos = tabela.get_children()
for i in tabelaprodutos:
x = tabela.item(i, "value")
if pesquisar == x[m]:
tabela.selection_set(i)
break
- -----------------------------------------------------------------------------------------------------------------------
- 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)
x = tabela.selection()[0]
tabela.delete(x)
tabela.insert("",'end',text= "L1",values=(nome, quantidade, preco, marca, codigo))
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)
x = tabela.selection()[0]
y = tabela.item(x, "values")
pesquisa = y[0]
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()
- -----------------------------------------------------------------------------------------------------------------------
- DELETE
def delete():
x = tabela.selection()[0]
y = tabela.item(x, "values")
pesquisa = y[0]
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(i)
arquivo.close()
x = tabela.selection()[0]
tabela.delete(x)
#-----------------------------------------------------------------------------------------------------------------------
btntabela = Button(janela, text = "Delete", command = delete) btntabela.place(x = 525, y = 5)
tabela = ttk.Treeview(janela, selectmode = 'browse', show = 'headings') tabela.place(x= 5, y = 50) tabela["columns"] = ("1", "2", "3", "4", "5") tabela['show'] = 'headings' tabela.column("1", width=118, anchor='c') tabela.column("2", width=118, anchor='c') tabela.column("3", width=118, anchor='c') tabela.column("4", width=118, anchor='c') tabela.column("5", width=116, anchor='c') tabela.heading("1", text="Nome") tabela.heading("2", text="Quantidade") tabela.heading("3", text="Preço") tabela.heading("4", text="Marca") tabela.heading("5", text="Codigo")
- CREATE
btncriar = Button(janela, text = "Adicionar novo produto", command = clickcriar).place(x = 355, y = 5)
- RECOVER
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>