Fix for OptionMenu not Updating correctly to new values
This commit is contained in:
parent
b33f92ce11
commit
680e4ca1ca
|
@ -718,7 +718,7 @@ class OptionMenu(Element):
|
||||||
'''
|
'''
|
||||||
self.Values = values
|
self.Values = values
|
||||||
self.DefaultValue = default_value
|
self.DefaultValue = default_value
|
||||||
self.TKOptionMenu = None
|
self.TKOptionMenu = None # type: tk.OptionMenu
|
||||||
self.Disabled = disabled
|
self.Disabled = disabled
|
||||||
bg = background_color if background_color else DEFAULT_INPUT_ELEMENTS_COLOR
|
bg = background_color if background_color else DEFAULT_INPUT_ELEMENTS_COLOR
|
||||||
fg = text_color if text_color is not None else DEFAULT_INPUT_TEXT_COLOR
|
fg = text_color if text_color is not None else DEFAULT_INPUT_TEXT_COLOR
|
||||||
|
@ -729,6 +729,13 @@ class OptionMenu(Element):
|
||||||
def Update(self, value=None, values=None, disabled=None, visible=None):
|
def Update(self, value=None, values=None, disabled=None, visible=None):
|
||||||
if values is not None:
|
if values is not None:
|
||||||
self.Values = values
|
self.Values = values
|
||||||
|
self.TKOptionMenu['menu'].delete(0, 'end')
|
||||||
|
|
||||||
|
# Insert list of new options (tk._setit hooks them up to var)
|
||||||
|
self.TKStringVar.set(self.Values[0])
|
||||||
|
for new_value in self.Values:
|
||||||
|
self.TKOptionMenu['menu'].add_command(label=new_value, command=tk._setit(self.TKStringVar, new_value))
|
||||||
|
|
||||||
if self.Values is not None:
|
if self.Values is not None:
|
||||||
for index, v in enumerate(self.Values):
|
for index, v in enumerate(self.Values):
|
||||||
if v == value:
|
if v == value:
|
||||||
|
|
Loading…
Reference in New Issue