gpt4 book ai didi

python - 快速简便 : trayicon with python?

转载 作者:IT老高 更新时间:2023-10-28 22:01:47 26 4
gpt4 key购买 nike

我只需要一个简单的示例,了解如何轻松地将带有 python 的图标放在我的系统托盘上。这意味着:我运行程序,没有显示任何窗口,只有一个托盘图标(我有一个 png 文件)出现在系统托盘中,当我右键单击它时,会出现一个带有一些选项的菜单(当我单击在一个选项上,一个函数运行)。那可能吗?我根本不需要任何 window ...

非常感谢示例/代码片段! :D

最佳答案

适用于 Windows 和 Gnome

给你! wxPython 是炸弹。改编 self 的Feed Notifier 的来源应用。

import wx

TRAY_TOOLTIP = 'System Tray Demo'
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.AppendItem(item)
return item


class TaskBarIcon(wx.TaskBarIcon):
def __init__(self):
super(TaskBarIcon, self).__init__()
self.set_icon(TRAY_ICON)
self.Bind(wx.EVT_TASKBAR_LEFT_DOWN, self.on_left_down)

def CreatePopupMenu(self):
menu = wx.Menu()
create_menu_item(menu, 'Say Hello', self.on_hello)
menu.AppendSeparator()
create_menu_item(menu, 'Exit', self.on_exit)
return menu

def set_icon(self, path):
icon = wx.IconFromBitmap(wx.Bitmap(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)


def main():
app = wx.PySimpleApp()
TaskBarIcon()
app.MainLoop()


if __name__ == '__main__':
main()

关于python - 快速简便 : trayicon with python?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6389580/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com