我的代碼中有一個迭代,每一行都顯示:ID / Name / Button Delete。你可以看到下面的圖片。我希望當我點擊其中一個洗掉按鈕時,同一行的資料被洗掉。 我已經盡力了,你可以看到我的代碼。我怎樣才能做到這一點? 謝謝你。
from tkinter import *
import mysql.connector
def main()。
root = Tk()
conn = mysql.connector.connect(user='root', password=', host='localhost',
資料庫='showmanager')
my_cursor = conn.cursor()
var_i =3
def del_customer()。
my_cursor.execute("DELETE FROM `spectator`")
"WHERE `spectator`.`id_customer` = " user[0] ")
my_cursor.execute("SELECT * FROM spectator"/span>)
users = my_cursor.fetchall()
for user in users:
label = Label(root, text=user, font=9)
label.grid(row=int(var_i), column=1)
Button(root, text="洗掉顧客", font=9, height=1,
command=del_customer).grid(row=int(var_i), column=4)
var_i = var_i 1
root.mainloop()
if __name__ == '__main__'/span>:
main()
uj5u.com熱心網友回復:
你可以向del_customer()傳遞客戶ID和相應的部件(標簽和按鈕),這樣你就可以根據客戶ID和函式內相應的標簽和按鈕洗掉資料庫中的記錄:
def del_customer(cust_id, widgets)。
my_cursor.execute("DELETE FROM spectator WHERE id_customer = %s"/span>, [cust_id])
conn.commit() # 使更改生效。
# 洗掉相應的標簽和按鈕。
for w in widgets:
w.destroy()
...
for user in users:
label = Label(root, text=user)
label.grid(row=var_i, column=1)
btn = Button(root, text="洗掉觀眾")
btn.grid(row=var_i, column=4)
var_i = 1 1
# 傳遞客戶ID、標簽和按鈕給del_customer()。
btn['command'] = lambda cust_id=user[0], widgets=(標簽,btn): del_customer(cust_id, widgets)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/319446.html
標籤:

