gpt4 book ai didi

Python 3.TTK。如何更改特定单元格的值?

转载 作者:太空宇宙 更新时间:2023-11-04 02:49:55 27 4
gpt4 key购买 nike

我对 tkinter/ttk 有一些问题。

所以,我知道如何获取 Treeview.focus,但如何更改此表中特定单元格的值?有什么建议吗?

import tkinter as tk
import tkinter.ttk as ttk

root = tk.Tk()

tview = ttk.Treeview(root)
tview["columns"] = ("SLOT_1","SLOT_2")
tview.column("SLOT_1", width=100 )
tview.column("SLOT_2", width=100)

tview.heading("#0",text="Column 0",anchor="w")
tview.heading("SLOT_1", text="Column 1")
tview.heading("SLOT_2", text="Column 2")

def add_item():
tview.insert("","end",values=("","bar"))

def edit_item():
focused = tview.focus()
print(tview.item(focused))

tview.pack()

add_item = tk.Button(root,text="Add item",command=add_item)
add_item.pack(expand=True,fill='both')

edit_item = tk.Button(root,text="Edit item",command=edit_item)
edit_item.pack(expand=True,fill='both')

root.mainloop()

我正在使用 Python 3.6tkinter/ttk

最佳答案

我添加了一个线程,因此程序在等待用户输入编辑时不会挂起。您可能想要为要输入的编辑添加一个或多个文本框

import tkinter as tk
import tkinter.ttk as ttk
import threading

root = tk.Tk()

tview = ttk.Treeview(root)
tview["columns"] = ("SLOT_1", "SLOT_2")
tview.column("SLOT_1", width=100)
tview.column("SLOT_2", width=100)

tview.heading("#0", text="Column 0", anchor="w")
tview.heading("SLOT_1", text="Column 1")
tview.heading("SLOT_2", text="Column 2")

def test_program_thread():
thread = threading.Thread(None, edit_item, None, (), {})
thread.start()

def add_item():
tview.insert("", "end", values=("", "bar"))


def edit_item():
focused = tview.focus()
x = input('Enter a Value you want to change')
tview.insert("", str(focused)[1:], values=("", str(x)))
tview.delete(focused)

tview.pack()

add_item = tk.Button(root, text="Add item", command=add_item)
add_item.pack(expand=True, fill='both')

edit_item_button = tk.Button(root, text="Edit item", command=test_program_thread)
edit_item_button.pack(expand=True, fill='both')

root.mainloop()

关于Python 3.TTK。如何更改特定单元格的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44197943/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com