这是我的示例代码单击打开屏幕截图 我尝试使用状态变量来实现,但在这种情况下,它会在两个子菜单上打勾。
[state = False
off_state = False][1]
def init_component(self):
image = Image.open(resource_path("favicon.ico"))
separator = MenuItem("-", None)
menu_items = Menu(
MenuItem("Open website", None),
MenuItem("Change status", Menu(MenuItem("Online", self.change_status_online, checked=lambda MenuItem : state), MenuItem("Offline", self.change_status_offline, checked=lambda MenuItem : off_state))),
MenuItem("Sign out", None),
MenuItem(separator, None),
MenuItem("Quit", None),
)
self.icon = _win32.Icon("TASK TRAY", image, "tasktool", menu_items)
self.icon.run()
def change_status_online(self,Icon, MenuItem):
global state
state = not MenuItem.checked
def change_status_offline(self, Icon, MenuItem):
global off_state
off_state = not MenuItem.checked