add tray icon test
parent
3a8f5e1f53
commit
c25f517aab
@ -0,0 +1,55 @@
|
|||||||
|
import wx.adv
|
||||||
|
import wx
|
||||||
|
TRAY_TOOLTIP = 'Name'
|
||||||
|
TRAY_ICON = 'icon.png'
|
||||||
|
|
||||||
|
|
||||||
|
def create_menu_item(menu, label, func):
|
||||||
|
item = wx.MenuItem(menu, -1, label)
|
||||||
|
menu.Bind(wx.EVT_MENU, func, id=item.GetId())
|
||||||
|
menu.Append(item)
|
||||||
|
return item
|
||||||
|
|
||||||
|
|
||||||
|
class TaskBarIcon(wx.adv.TaskBarIcon):
|
||||||
|
def __init__(self, frame):
|
||||||
|
self.frame = frame
|
||||||
|
super(TaskBarIcon, self).__init__()
|
||||||
|
self.set_icon(TRAY_ICON)
|
||||||
|
self.Bind(wx.adv.EVT_TASKBAR_LEFT_DOWN, self.on_left_down)
|
||||||
|
|
||||||
|
def CreatePopupMenu(self):
|
||||||
|
menu = wx.Menu()
|
||||||
|
create_menu_item(menu, 'Site', self.on_hello)
|
||||||
|
menu.AppendSeparator()
|
||||||
|
create_menu_item(menu, 'Exit', self.on_exit)
|
||||||
|
return menu
|
||||||
|
|
||||||
|
def set_icon(self, path):
|
||||||
|
icon = wx.Icon(path)
|
||||||
|
self.SetIcon(icon, TRAY_TOOLTIP)
|
||||||
|
|
||||||
|
def on_left_down(self, event):
|
||||||
|
print ('Tray icon was left-clicked.')
|
||||||
|
|
||||||
|
def on_hello(self, event):
|
||||||
|
print ('Hello, world!')
|
||||||
|
|
||||||
|
def on_exit(self, event):
|
||||||
|
wx.CallAfter(self.Destroy)
|
||||||
|
self.frame.Close()
|
||||||
|
|
||||||
|
class App(wx.App):
|
||||||
|
def OnInit(self):
|
||||||
|
frame=wx.Frame(None)
|
||||||
|
self.SetTopWindow(frame)
|
||||||
|
TaskBarIcon(frame)
|
||||||
|
return True
|
||||||
|
|
||||||
|
def main():
|
||||||
|
app = App(False)
|
||||||
|
app.MainLoop()
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
main()
|
Loading…
Reference in New Issue