python - 当我尝试使用 treeview 进行项目时显示语法错误
问题描述
谁能告诉我这段代码有什么问题
import tkinter as tk
from tkinter import messagebox
from tkinter import ttk
from registration import DBConnect
class ListTicket():
def __init__(self):
self.db=DBConnect()
self.root=tk.Tk()
tv=ttk.Treeview(self.root)
tv.pack()
tv.heading("#0",text="ID")
tv.column=("NAME")
tv.column = ("GENDER")
tv.column = ("COMMENTS")
tv.heading("NAME",text="NAME")
tv.heading("GENDER",text="GENDER")
tv.heading("COMMENTS",text="COMMENTS")
cursor =self.db.Show()
for row in cursor:
tv.insert("","end","#{}".format(row["ID"],text=row["ID"])) #1
tv.set("#{}".format(row["ID"],column="NAME",value=row["name"]) #2
tv.set("#{}".format(row["ID"],column="GENDER",value=row["gender"]) #3
tv.set("#{}".format(row["ID"],column="COMMENTS",value=row["comment"]) #4
self.root.mainloop()
我收到第 2、3、4 行的语法错误。我正在从数据库中获取值。
解决方案
就您的语法错误而言:
for row in cursor:
tv.insert("","end","#{}".format(row["ID"],text=row["ID"])) #1
tv.set("#{}".format(row["ID"],column="NAME",value=row["name"])) #2
tv.set("#{}".format(row["ID"],column="GENDER",value=row["gender"])) #3
tv.set("#{}".format(row["ID"],column="COMMENTS",value=row["comment"])) #4
您忘记在 every 末尾关闭括号tv.set()
。