显示 windows 10 条通知 - Python

Displaying windows 10 notifications - Python

简短说明:如何使用按钮制作 windows 10 个通知或仅使通知可点击? (使用 python)

Long:我想在windows10做通知,希望在通知弹出的时候能够点击。然后单击通知时,它应该执行一个功能。我查看了很多解决方案,但其中 none 似乎有效。到目前为止,我得到的最好的一个来自 'Windows-10-Toast-Notifications' (win10toast),但由 Charnelx 进行了修改。 要安装他的代码,我尝试使用以下内容:

pip install git+https://github.com/Charnelx/Windows-10-Toast-Notifications.git#egg=win10toast

虽然我尝试安装它时它似乎不起作用。我正在使用 python 3.8.9.

希望有人能帮助我。

在网上转了一段时间后,我偶然发现了这个资源。它提供了点击通知的选项。

Link for resources

您可以使用这个名为 winrt 的 python 模块。

#importing required modules
import winrt.windows.ui.notifications as notifications
import winrt.windows.data.xml.dom as dom
from time import sleep

# create notification objects
nManager = notifications.ToastNotificationManager
notifier = nManager.create_toast_notifier(r"C:\Users\USERNAME\AppData\Local\Programs\Python\Python38\python.exe")

# PUT YOUR USERNAME INSTEAD OF USERNAME  
# put your python path there.

# define the xml notification document.
tString = """
<toast>
    <visual>
        <binding template='ToastGeneric'>
            <text>Another Message from Tim!</text>
            <text>Hi there!</text>
        </binding>
    </visual>

    <actions>
        <action
           content="View Message"
           arguments="test1"
           activationType="backround"/>
    </actions>
</toast>
"""

# load the xml document.
xDoc = dom.XmlDocument()
xDoc.load_xml(tString)

notification = notifications.ToastNotification(xDoc)

# display notification
notifier.show(notification)

# this is not called on the main thread.
def handle_activated(sender, _):
    print([sender, _])
    print('Button was pressed!')

# add the activation token.
activated_token = notification.add_activated(handle_activated)

# do something else on the main thread.
while True:
    sleep(1)

我从哪里了解到的:这个issue