这是我的代码:
from tkinter import ttk
import tkinter
class MainApplication(ttk.Frame):
texty = "text"
def __init__(self, parent, *args, **kwargs):
tkinter.Frame.__init__(self, parent, *args, **kwargs)
self.parent = parent
self.button1 = ttk.Button(text=MainApplication.texty, command=self.ev(self))
self.button1.pack()
def ev(event, self):
print(self.button1.text)
在最后一段代码中,嵌套在addListener中的函数应该打开一个显示传感器ID的框:#
但是,该功能内部的SensorID [i]存在问题。代码不允许我将数组传递给函数。这有解决方法吗?如何将SensorID [i]传递给函数()?
答案 0 :(得分:1)
由于回调函数仅在循环结束后执行,i
将继续运行。为避免这种情况,请在let i
构造中使用var i
代替for
:这将为每次迭代创建单独的i
变量。