在mac上,如何检测鼠标右键单击wxpython应用程序的taskbaricon

在mac上,如何检测鼠标右键单击wxpython应用程序的taskbaricon,wxpython,mouseevent,right-mouse-button,Wxpython,Mouseevent,Right Mouse Button,我在任务栏/系统托盘区域中有一个运行简单的wxpython应用程序,当用户单击它时,它会显示弹出菜单。工作正常,但当用户在任务栏图标(mac)上单击鼠标右键时,我需要显示弹出菜单 绑定右键单击类似: self.Bind(wx.EVT_TASKBAR_RIGHT_UP, self.onRight) 不要做任何事情。您不需要直接绑定事件。TaskBarIcon有一个添加右键单击菜单的方法,用户可以很好地解释它 如果C++文档混淆了你,看看任务栏图标上的优秀教程。 预计到达时间: 请注意,默认情况

我在任务栏/系统托盘区域中有一个运行简单的wxpython应用程序,当用户单击它时,它会显示弹出菜单。工作正常,但当用户在任务栏图标(mac)上单击鼠标右键时,我需要显示弹出菜单

绑定右键单击类似:

self.Bind(wx.EVT_TASKBAR_RIGHT_UP, self.onRight) 

不要做任何事情。

您不需要直接绑定事件。TaskBarIcon有一个添加右键单击菜单的方法,用户可以很好地解释它

<>如果C++文档混淆了你,看看任务栏图标上的优秀教程。

预计到达时间

请注意,默认情况下,wxPython在Mac上提供wxWigets菜单栏项,据我所知,(第353行)。如果您通过正确的魔法词构建项目,则可以获得dock任务栏项目:

wx.TaskBarIcon(wx.TBI_DOCK)

这可以捕获左键和右键单击。

这是wxwidget 2.9.4的已知问题,在该问题中,右键单击taskbaricon时不会触发事件。

你是指菜单栏还是码头?Mac上并没有直接等效的系统托盘。我指的是使用wx.TaskBarIcon类创建的菜单栏。绑定右键单击:self.Bind(wx.EVT\u任务栏\u right\u UP,self.onRight)不做任何事情。似乎wxPython知道右键单击时不触发事件的问题。在Windows7上,右键单击菜单工作正常,不绑定任何事件。在Mac上,默认情况下,左键单击菜单工作,我也需要在右键单击时显示相同的菜单。我找不到任何说明如何在MacOSTake上右键单击显示任务栏菜单的文档,请再看一下鼠标与Python教程。第二个代码示例包括一个
MailIcon
类,该类将wx.TaskBarIcon子类化并覆盖CreatePopupMenu。