【问题标题】:Showing a syntax error when I tried to do a project with treeview当我尝试使用 treeview 进行项目时显示语法错误
【发布时间】:2021-01-26 05:49:05
【问题描述】:

谁能告诉我这段代码有什么问题

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 行出现语法错误。我正在从数据库中获取值。

【问题讨论】:

  • 请发布完整的错误代码
  • 语法错误.tv.set("#{}".format(row["ID"],column="GENDER",value=row["gender"]) ^ SyntaxError : 无效语法

标签: python sqlite tkinter treeview


【解决方案1】:

就您的语法错误而言:

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

您忘记在每个tv.set() 末尾加上括号。

【讨论】:

    猜你喜欢
    • 2021-12-16
    • 1970-01-01
    • 2015-02-21
    • 1970-01-01
    • 2022-11-25
    • 1970-01-01
    • 1970-01-01
    • 2018-11-23
    • 2019-09-23
    相关资源
    最近更新 更多