我在Python中寻找类似Growl的,类似于气球提示的通知库.想象一下编写如下代码:
>>> import desktopnotifier as dn
>>> dn.notify('Title', 'Long description goes here')
Run Code Online (Sandbox Code Playgroud)
..并且会通过Mac,Windows和Linux上的相应工具提示进行通知.这样的图书馆存在吗?如果没有,我将如何自己写一个?
更新:我的偏好是不依赖于像PyQT4和wxPython这样的巨大GUI框架来完成这样的简单任务.
我通常在Linux系统上工作,但我需要编写一个客户端应用程序,它可以作为服务器在Windows上运行.有人可以帮助我或指导,如何为Windows环境构建一个MenuBar应用程序(例如dropbox),它在操作系统启动时启动,图标位于TaskBar中,点击应用程序图标会显示一个菜单.
我的脚本语言是python.谢谢.
我最近升级到了wxPython(wxPython 2.9.2.4)的开发版本,因为我需要在我的应用程序中使用wx.NotificationMessage的功能.由于我认为可能存在错误,我一直试图在某些用户事件上创建通知气泡失败.在提交此类错误之前,我想继续向邮件列表的人员询问他们认为可能存在的问题,并希望在我的代码中找到解决方案.
这是我用过的代码:
import wx, sys
app = wx.PySimpleApp()
class TestTaskBarIcon(wx.TaskBarIcon):
def __init__(self):
wx.TaskBarIcon.__init__(self)
# create a test icon
bmp = wx.EmptyBitmap(16, 16)
dc = wx.MemoryDC(bmp)
dc.SetBrush(wx.RED_BRUSH)
dc.Clear()
dc.SelectObject(wx.NullBitmap)
testicon = wx.EmptyIcon()
testicon.CopyFromBitmap(bmp)
self.SetIcon(testicon)
self.Bind(wx.EVT_TASKBAR_LEFT_UP, lambda e: (self.RemoveIcon(),sys.exit()))
wx.NotificationMessage("", "Hello world!").Show()
icon = TestTaskBarIcon()
app.MainLoop()
Run Code Online (Sandbox Code Playgroud)
在我的Windows 7计算机上,代码会创建一个小的白色任务栏图标,并创建一个带有短语"Hello World!"的弹出窗口.问题?消息不在我的图标上.正在创建另一个图标,并将消息放在那里.见图:http://www.pasteall.org/pic/18068">
我认为这可能是因为我在第22行没有传递父参数:
wx.NotificationMessage("", "Hello world!").Show()
Run Code Online (Sandbox Code Playgroud)
以下是我将其更改为:
wx.NotificationMessage("", "Hello world!", self).Show()
Run Code Online (Sandbox Code Playgroud)
"self"指的是任务栏图标.当我这样做时,我收到一个错误:
Traceback (most recent call last):
File "C:\Python27\testnotificationmessage.py", line 24, in <module>
icon = TestTaskBarIcon()
File "C:\Python27\testnotificationmessage.py", line 22, in __init__
wx.NotificationMessage("", "Hello …Run Code Online (Sandbox Code Playgroud) 如何使用 python 发送支持按钮的通知,并留在操作/通知中心?
我正在尝试制作一个提醒我做某事的应用程序,并且通知将有一个完整的和一个小睡按钮。我尝试使用win10toast包,但是通知没有留在操作中心,并且不支持在其上放置按钮。
通知应类似于以下内容:
谢谢!