要求是创建一个可以注册点击事件的桌面通知。我不能使用web套接字或任何浏览器通知
我无法使用任务栏图标和系统任务栏,因为它们无法在显示消息上注册单击事件。他们可以在trayicon上有点击事件,但不能在显示消息上。最接近的例子——“当我们注册一条Skype消息时,它会为我们打开Skype”
截图
点击上面的通知Skype聊天打开。托盘图标不支持相同的功能。要么围绕它工作,要么采取新的方法。
希望我很清楚,谢谢。
我使用了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。事实上,我自己并没有运行命令行——相反,我