【发布时间】:2019-02-03 06:25:25
【问题描述】:
我的 GUI 中有树视图(n=行,3 列)。当用户在标签中输入值并按下按钮时,行会不断增加。假设用户输入了 3 个值,即 3 行被插入到我的树视图中。现在,我想将其中一列中的值相加并将其显示在另一个标签中。我该怎么做?
def __init__(self, parent, controller):
self.entry=ttk.Entry(self,width=10,)
self.entry.grid(row=2, column=2, ) #value entered by the user and displayed in Temp column
self.entry1=ttk.Entry(self,width=10,)
self.entry1.grid(row=2, column=3, )#value entered by the user and displayed in time column
ttk.Button(self, text='Enter', command=self.insert_data).grid(row=2,column=4, )#calling the method insert data to insert the values entered by the user
self.tree = ttk.Treeview( self, columns=('Temp','time'))
self.tree.heading('#0', text='Number')
self.tree.heading('#1', text='Temp')
self.tree.heading('#2', text='time')
self.tree.column('#1', stretch=tk.YES)
self.tree.column('#2', stretch=tk.YES)
self.tree.column('#0', stretch=tk.YES)
self.tree.grid(row=5, columnspan=4, sticky='nsew')
self.treeview = self.tree
# Initialize the counter
self.i = 1
ttk.Label(self, text='Sum').grid(row=6, column=1, sticky='e')
ttk.Label(self,width = 10,).grid(row=6, column=2, sticky="e") #***I want to display the sume of values entered in the column 'Temp' in this label
def insert_data(self):
self.treeview.insert('', 'end', text=str(self.i), values=(self.entry.get(), self.entry1.get()+"h"))
# Increment counter
self.i = self.i + 1
【问题讨论】:
-
您的问题没有包含足够的细节。通常我们会要求您创建一个minimal reproducible example,以便我们可以看到您的尝试。否则,你的问题写得太宽泛了。
-
抱歉,我知道不清楚,但找不到编辑已发布问题的方法。但是,我的问题是:如何添加在树视图的列中输入的值并将其显示在标签中?
-
点击问题底部标签下方的edit按钮。
-
@BryanOakley 请立即查看。如果您仍然不清楚,请告诉我