Python,如何将模块变量中的更改绑定到我的脚本?

时间:2017-12-16 16:09:48

标签: tkinter python-3.6

我有一个模块,根据鼠标点击更改变量的值 现在我想在脚本中导入该模块,然后在模块的变量值发生变化的任何地方打印。

1 个答案:

答案 0 :(得分:0)

通过将回调传递给我的类构造函数来解决问题 然后在StringVar中使用该回调。

在script.py

import module
def script_callback(a, b, c):
    print(module.canvas.var.get())
canvas = module.MyClass(callback=script_callback)

在module.py中:

class MyClass():
    def __init__(callback):
        self.var = StringVar()
        self.var.trace('w', callback)  
        self.var.set(data)

感谢Bryan和furas。