Я пытаюсь удалить строку дерева, используя значение в его столбце в моем питоне 3.
Я использую дерево
selected_item = tree.selection () [0]. delete (selected_item)
но это не тот код, который я ищу. Я попытался использовать поле ввода, где я вводил идентификатор для своего продукта, и он автоматически добавлялся в виде дерева. И я хочу удалить продукт автоматически, если идентификатор, который уже введен в список
from tkinter import ttk
from tkinter import Tk, Entry
import tkinter as tk
import sqlite3
def View():
conn = sqlite3.connect("mbd.db")
cur = conn.cursor()
cur.execute("SELECT * FROM product where itemnum='" + entry.get() + "';")
rows = cur.fetchall()
for child in tree.get_children():
if entry.get() == float(tree.item(child, 'values')[0]):
selected_item = tree.selection()[0]
tree.delete(selected_item)
else:
for row in rows:
tree.insert("", tk.END, values=row)
conn.close()
root.after(1000, View)
def dup():
for ids in tree.get_children():
List = tree.item(ids, 'values')[0]
for i in List:
if List.count(i)>1:
print(i, List.index(i))
root = tk.Tk()
root.title("Automated Shopping Cart")
tree= ttk.Treeview(root, column=("column1","column2", "column3"), show='headings')
tree.heading("#1", text="Item No.")
tree.heading("#2", text="Item Name")
tree.heading("#3", text="Price")
tree.grid(row=0, columnspan=2)
remove_button = tk.Button(root, text="remove",font=(None, 18), command=dup)
remove_button.grid(row=2,column=2)
entry = Entry()
entry.grid(row=0, column=2, sticky=tk.W)
View()
root.mainloop()
Я ожидаю, что продукт будет удален автоматически, если я введу идентификатор, который уже существует в древовидном представлении