次のコードは、2 つのオプション メニューとコールバック関数「VarMenu」を示しています。各行のループで同じオプションメニューをいくつか作成したことを除いて、これはすべてうまく機能します。それらの1つだけが「L」に変更される場合、ユニットオプションメニューの対応する行のみが「N」に変更され、それらのすべてではなく変更されます。
リストや大量のコード行とあまり混同したくありませんが、リストを作成した場合 self.type = [] は機能しますか?
前もって感謝します!
def VarMenu(self, selection):
if selection == "L":
self.variableunit.set("N")
self.unit.config(state=DISABLED)
else:
self.variableunit.set("mm")
self.unit.config(state=NORMAL)
def import_file(self): # Not complete code
for row_number, row_data in enumerate(info):
self.variable = StringVar(self.frame_table)
self.variable.set(pre(code))
self.type = OptionMenu(self.frame_table, self.variable, "None", "Clear", "F", "L", command=self.VarMenu)
self.type.grid(row=row_number+i, column=3, sticky="nsew", padx=1, pady=1)
# Unit drop down menu
self.unit = OptionMenu(self.frame_table, self.variableunit, "mm", "N")
self.unit.grid(row=row_number+i, column=5, sticky="nsew", padx=1, pady=1)