当前位置: 首页 > 知识库问答 >
问题:

创建Java桌面通知

阎嘉荣
2023-03-14

要求是创建一个可以注册点击事件的桌面通知。我不能使用web套接字或任何浏览器通知
我无法使用任务栏图标和系统任务栏,因为它们无法在显示消息上注册单击事件。他们可以在trayicon上有点击事件,但不能在显示消息上。最接近的例子——“当我们注册一条Skype消息时,它会为我们打开Skype”

截图

点击上面的通知Skype聊天打开。托盘图标不支持相同的功能。要么围绕它工作,要么采取新的方法。
希望我很清楚,谢谢。

共有1个答案

徐佐
2023-03-14

我使用了github DorkBox中的以下存储库
只需按照github链接上的说明添加maven依赖项。但是,我无法检查如何更改通知的UI。

Notify.create()
      .title(text)
      .text(title)
      .position(Pos.TOP_RIGHT)
      .onAction( new ActionHandler<Notify>() {
            @Override
            public void handle(Notify value) {
                if (Desktop.isDesktopSupported() && Desktop.getDesktop().isSupported(Desktop.Action.BROWSE)) {
                    try {
                        Desktop.getDesktop().browse(new URI(targetUrl));
                    } catch (IOException e) {
                        e.printStackTrace();
                    } catch (URISyntaxException e) {
                        e.printStackTrace();
                    }
                }
            }
      })
      .hideAfter(5000)
      .shake(250, 5)
      .darkStyle()      // There are two default themes darkStyle() and default.
      .showConfirm();   // You can use warnings and error as well.

在主块中添加以下代码,就可以开始了。

 类似资料:
  • 桌面通知 通知用户发生了一些重要的事情。桌面通知会显示在浏览器窗口之外。 下面的图片是通知显示时的效果,在不同的平台下,通知的显示效果会有些细微区别。 通常直接使用一小段 JavaScript 代码创建通知,当然也可以通过扩展包内的一个单独HTML页面。 声明 可以在 extension manifest 中声明使用通知权限,像这样: { "name": "My extension", .

  • 在 iOS 和 Android 移动设备中,Native App 向用户推送通知是很常见的行为,这是重新吸引用户访问应用最有效方法之一。然而推送通知一直被认为是 Web App 缺少的能力,在接下来的两节我们将介绍 Web App 如何实现推送通知。 Notification API 是 HTML5 新增的一套展示桌面通知的 API,桌面通知具有全局效果,它脱离了浏览器,采用和 Native Ap

  • 我知道这个问题已经被问过很多次了,一直都有一个答案是关于使用一个可执行的jar或制作一个。exe使用launch4j或类似应用程序。 我可能听起来像个新手,实际上我是。 我一直在用一个Java项目尝试一些东西。我已经成功地制作了一个可执行的jar和一个. exe文件。这都要归功于你之前在SO中的回答:) 但是,我想为Windows创建一个安装程序。例如,按Next 2-3次(显示所有条款和条件等)

  • 问题内容: 我知道这个问题已经被问过很多次了,而且一直有一个答案说明使用可执行jar或使用launch4j或类似应用程序制作.exe。 我听起来像是一个新手,实际上是我。 我一直在尝试Java项目中的一些事情。我已经成功地制作了一个可执行的jar和一个.exe文件。非常感谢您之前在SO中的回答:) 但是,我想为Windows创建一个安装程序。像是,按下一步2至3次(显示所有条款和条件等),然后用户

  • 我有一个用Java编写的小实用程序,用Netbeans作为“Maven项目”编写(项目上的小图标上有一个样式化的“m”)。我想把这个实用程序以及它所依赖的库打包成一个jar文件;我希望jar文件包含必要的运行库,这样我就不必单独打包它们。 Netbeans指令说,当我运行build时,我将在项目目录下创建'dist'和'lib'目录,并且(因为我在项目属性中设置了主类),我将在清单文件中指定它。所

  • 我刚开始使用jpack,它是一个非常棒的工具。一步就可以让我轻松完成很多工作。我对看起来硬编码且无法定制的东西就越感到惊讶? JPackage自动生成启动器( 。使用xprop,我发现这个值是基于负责窗口的完全限定类名的——这绝对有意义。 那么我如何告诉jpackage在生成的。桌面文件? 编辑:为了补充Bodo的评论,我将展示我如何调用jpackage。事实上,我自己并没有运行命令行——相反,我