When using _setit I get the following warning in PyCharm:
Why do I use _setit
?
I want to add or remove dynamically options to a dropdown list. To do so, I extract the tk.Menu
object from the tk.OptionMenu
I defined. And I add_command
to this tk.Menu
object. Problem is, when I click on the dropdown list, the element is not selected.
Hence, I use the protected member _setit
like so:
MY_MENU.add_command(label=LABEL, command=tk._setit(MY_STRING_VAR, LABEL))
. MY_STRING_VAR is obviously the tk.StringVar
associated to the tk.OptionMenu
object defined earlier.
This works perfectly but I'm not allowed to use any # noqa
in my project and I'm not allowed any weak warnings either. So two questions:
- Is it actually a problem to use a "protected member of a module"? whatever that means?
- Is there any workaround? Am I doing it the wrong way?