【发布时间】:2016-07-07 08:03:00
【问题描述】:
这是我的示例代码。我希望在按下回车按钮时将条目中键入的项目插入到树视图中。我是 python 和 tkinter 新手,对 treeview 没有太多了解。
class PurchaseEntry(tk.Frame):
def __init__(self, parent, controller):
tk.Frame.__init__(self, parent)
self.controller = controller
PurchaseEntry.configure(self, bg='white')
label = ttk.Label(self, text='Purchase Entry', font=LARGE_FONT2)
label.grid(row=0, columnspan=3, sticky='w')
purchase_entry = ttk.Label(self, text='Purchase Entry:')
purchase_entry.grid(row=1, column=0)
self.entry_val = tk.StringVar()
self.entry_1 = ttk.Entry(self, width=100, textvariable=self.entry_val)
self.entry_1.grid(row=1, column=2, columnspan=2, sticky='w')
self.entry_1.focus()
self.entry_btn = ttk.Button(self,text='Enter', command=self.insert_value)
self.entry_btn.grid(row=1, column=4, columnspan=2, sticky='w')
self.chat1 = ttk.Treeview(self)
chat1 = ttk.Treeview( self, height=28, columns=('dose', 'date modified'), selectmode="extended")
chat1.heading('#0', text='item', anchor=tk.CENTER)
chat1.heading('#1', text='dose', anchor=tk.CENTER)
chat1.heading('#2', text='date modified', anchor=tk.CENTER)
chat1.column('#1', stretch=tk.YES, minwidth=50, width=100)
chat1.column('#2', stretch=tk.YES, minwidth=50, width=120)
chat1.column('#0', stretch=tk.YES, minwidth=50, width=400)
chat1.grid(row=2, column=2, columnspan=4, sticky='nsew')
def insert_value(self):
value = self.entry_val.get()
# Inserts data written in the entry box to the treeview widget when Enter button is pressed.
# Clears the Entry box, ready for another data entry.
self.entry_1.delete(0, 'end')
self.chat1.insert('WHAT SHOULD I GIVE AS AN ARGUMENT?')
我应该传递什么作为参数? 或者树视图是正确的小部件,或者有人可以建议适合这个问题的小部件吗?谢谢
【问题讨论】:
-
我只想知道如何在按下按钮后使用条目小部件在树视图中插入一个项目。我还有其他列,因为稍后我将包括添加该特定项目的日期。跨度>
-
这个开源项目可能对你有很大帮助:github.com/talcs/tals_python_task_diary
标签: python python-3.x tkinter treeview