Python 3.5。如何将一系列tk.entries绑定到相同的函数但值不同

时间:2018-07-24 17:19:11

标签: python python-3.x tkinter tkinter-entry

我正在用python 3(python 3.5,但是如果需要可以升级到python 3.6)

我有一个tkindex窗口。该窗口具有一系列条目,对于每个条目,我都有一个代表不同百分比的不同浮点数(总和必须为100)。我需要用户能够调整这些值。因此,每次更改值()时我都需要调用一个函数,但是每次该函数必须知道调用了哪个条目时。

这是我编写的相关代码。

...
import tkinter as tk
...

class MainWindow:
...
def new_percentage(self,*args):
    new_percentage_string=args[0].widget.get()
    print(args[1])
    ...

def __init__(self,df):
    self.window=tk.Tk()
    ...
    self.label_aimed_percentage=dict()
    ...
    for position, c in enumerate (df.index):
        ...
        self.entry_aimed_percentage[c]=tk.Entry(    self.coin_data_frame,width=4)
        self.entry_aimed_percentage[c].bind("<Return>",lambda event:self.new_percentage(event,c))
        ...
    ...
...

但是每次调用new_percentage时,args [1]都包含相同的值(df.index的最后一个),独立于我在哪个条目上进行编辑。

如何将不同的值传递给各种绑定的条目?

0 个答案:

没有答案