import tkinter as tk from tkinter import ttk root = tk.Tk() tree = ttk.Treeview(root) tree.pack() # 添加根节点 tree.insert("", "end", text="Root") root.mainloop() 我怎么删除Root
时间: 2023-06-18 07:03:13 浏览: 65
你可以使用 `delete` 方法来删除树中的节点。在这个例子中,你可以使用以下代码删除名为 "Root" 的节点:
```
# 获取名为 "Root" 的节点的 ID
root_id = tree.get_children()[0]
# 删除名为 "Root" 的节点
tree.delete(root_id)
```
完整的代码如下:
```
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
tree = ttk.Treeview(root)
tree.pack()
# 添加根节点
tree.insert("", "end", text="Root")
# 获取名为 "Root" 的节点的 ID
root_id = tree.get_children()[0]
# 删除名为 "Root" 的节点
tree.delete(root_id)
root.mainloop()
```
相关问题
import tkinter as tk from tkinter import messagebox from tkinter.ttk import Treeview class Application(tk.Frame): def __init__(self, master): super().__init__(master) self.place(relx=0, rely=0, relwidth=1, relheight=1) self.master = master
这段代码是一个基于tkinter库的GUI应用程序的基础框架,它创建了一个名为Application的类,并继承了tk.Frame类。在构造函数中,它使用super()函数调用父类的构造函数,并将主窗口(master)作为参数传递给父类构造函数。它还使用place()方法将整个窗口放置在主窗口的左上角,并设置其相对大小为1。
但是,这段代码似乎并没有完成,因为它没有定义任何的窗口组件。如果您想使用这个框架来创建一个实际的GUI应用程序,您需要添加一些窗口组件,例如按钮、文本框、标签、菜单等。
import pyodbc import tkinter as tk from tkinter import ttk config = { 'Driver': '{SQL Server}', 'Server': 'localhost', 'Database': 'BMS', 'UID': 'sa', 'PWD': '20031224sql' } # 连接数据库 conn = pyodbc.connect(**config) # 创建表格 root = tk.Tk() table = ttk.Treeview(root) table.pack() # 获取数据并显示在表格中 def update_table(): cursor = conn.cursor() cursor.execute('SELECT * FROM Book') rows = cursor.fetchall() table.delete(*table.get_children()) for row in rows: table.insert('', 'end', values=row) # 创建按钮 button = tk.Button(root, text="Update Table", command=update_table) button.pack() root.mainloop()该代码执行后,点击Update Table 后无反应且进程退出,是为什么,给出修改后的代码
根据你提供的代码,问题可能是因为在执行 `update_table()` 函数时,没有提交对数据库的修改操作。可以在执行 `cursor.execute()` 后添加 `conn.commit()` 来提交操作。
此外,建议在使用完 `cursor` 后关闭它,可以在函数结尾添加 `cursor.close()`。
修改后的代码如下:
```
import pyodbc
import tkinter as tk
from tkinter import ttk
config = {
'Driver': '{SQL Server}',
'Server': 'localhost',
'Database': 'BMS',
'UID': 'sa',
'PWD': '20031224sql'
}
# 连接数据库
conn = pyodbc.connect(**config)
# 创建表格
root = tk.Tk()
table = ttk.Treeview(root)
table.pack()
# 获取数据并显示在表格中
def update_table():
cursor = conn.cursor()
cursor.execute('SELECT * FROM Book')
rows = cursor.fetchall()
table.delete(*table.get_children())
for row in rows:
table.insert('', 'end', values=row)
conn.commit()
cursor.close()
# 创建按钮
button = tk.Button(root, text="Update Table", command=update_table)
button.pack()
root.mainloop()
```