我有两个类,如何将pathentry变量传递给下一个类?本质上,pathentry变量是在文本条目中输入的文件的路径名。
class LabelBrowseButtonWidget(AbsLabelInputWidget):
"""Class created to create button widgets in the header of the gui"""
def create_input(self):
filepath_var = StringVar()
self.Button = ttk.Button(self,
text="Select Input File",
command=lambda: filepath_var.set(self.getFilePath())
)
self.Button.pack(fil=tk.X, padx=0, expand=True)
pathentry = ttk.Entry(self, textvariable=filepath_var)
pathentry.pack(fill=tk.X, padx=5, expand=False)
return pathentry
def getFilePath(self):
filepath = filedialog.askopenfilename(filetypes=(("Excel Files", "*.xls"),
("Excel Files", "*.xlsx")))
return filepath
class LabelButtonWidget(AbsLabelInputWidget):
"""Button created for executing the import of the input file"""
def create_input(self, *args):
self.Button = ttk.Button(self,
text="Import Input File",
command=lambda: self.fileImport()
)
self.Button.pack(fil=tk.X, padx=5, expand=True)
def fileImport(self):
pathentry = LabelBrowseButtonWidget.create_input(self.pathentry.get())
print(pathentry)
# print("now what?")
我想我在这里有点失落。
答案 0 :(得分:0)
我不太明白。
您是否希望从任何地方都可以访问变量?如果是,请使用global
。定义变量时,首先输入以下行:
全局变量 然后才能访问它。
在创建实例时,是否要将变量传递给类?如果是,请使用__init__
函数:
class classname(object):
def __init__(self, variable):
self.variable=variable
然后在创建实例时:
instance=classname(variable)
并从类中访问变量:
self.variable
从外面来看:
instance.variable
或者你只是想检索一个属于不同类的属性的变量?如果是这样的话:
instance.variable