Python 这些变量是否会贯穿主框架的整个生命周期?
我正在写一个Tkinter程序。主类是Python 这些变量是否会贯穿主框架的整个生命周期?,python,tkinter,Python,Tkinter,我正在写一个Tkinter程序。主类是MainFrame() 通过调用add\u tab创建的每个tab变量是否会在主框架的整个生命周期内保持不变(直到它被销毁)?谢谢。每个变量都绑定到一个对象选项卡。每个选项卡都有一个父项。函数存在后,函数的局部变量将消失-即绑定丢失,但您在列表self.tabs中有对对象Tab(每一个)的引用,该引用在对象MyFrame的整个生命周期内持续存在 每个对象选项卡将一直存在,直到父类(和/或父类的父类)被销毁(或通过调用选项卡上的销毁方法) 我只是胡乱猜测:(每
MainFrame()
通过调用
add\u tab
创建的每个tab
变量是否会在主框架的整个生命周期内保持不变(直到它被销毁)?谢谢。每个变量都绑定到一个对象选项卡
。每个选项卡都有一个父项。函数存在后,函数的局部变量将消失-即绑定丢失,但您在列表self.tabs
中有对对象Tab
(每一个)的引用,该引用在对象MyFrame
的整个生命周期内持续存在
每个对象选项卡
将一直存在,直到父类(和/或父类的父类)被销毁(或通过调用选项卡
上的销毁方法)
我只是胡乱猜测:(每个变量都绑定到一个对象Tab
。每个Tab
都有一个父对象。一旦函数存在,函数的本地变量就会消失-也就是说,绑定丢失,但您有对对象Tab
的引用(每个)在列表self.tabs
中,它们在对象的整个生命周期中持续存在MyFrame
每个对象选项卡
将一直存在,直到父类(和/或父类的父类)被销毁(或通过调用选项卡
上的销毁方法)
我只是胡乱猜测::(
class MainFrame(Frame):
def __init__(self, master=None):
Frame.__init__(self, master)
self.grid()
# sets up the tab bar
self.tabbar = TabBar(self, 'File Tabe Bar')
self.tabs = []
self.add_tab(self.tabbar, 'Hello Tab') # add a new tab to self.tabs
self.tabbar.pack() # make it visible
def add_tab(self, parent, name='Default'):
tab = Tab(parent, name)
self.tabs.append(tab)