桌面应用程序的推荐技术选择

时间:2009-04-02 12:20:27

标签: java popup desktop-application

我正在创建一个基本上是财务警报网站的应用程序。我是一名基础Java程序员,我已经用Java创建了一些警报逻辑。

我希望每当“有趣”的事情发生时,桌面上就会出现弹出窗口(有趣的取决于%变化,流动性和一些其他简单因素)。

实现这样的技术的最佳技术组合是什么?

4 个答案:

答案 0 :(得分:8)

我会在Java SE 6中使用java.awt.SystemTray。它是跨平台的,非常易于使用。

虽然有些人讨厌Windows中的气球通知,但它们是最不突兀的弹出窗口,因为它们可以被用户忽略或轻易被解雇。最重要的是,离开计算机的用户不会错过它们,因为气球(至少在Windows XP / Vista中)使用系统空闲计时器来确定何时是消失的正确时间。

有些人更喜欢更传统的Toast通知,类似于Outlook所显示的那些 - 它们会显示并慢慢淡出,如果需要,可以让用户有时间与他们互动。

答案 1 :(得分:1)

我有相同的problem并最终使用未修饰的alwaysOnTop窗口解决了它。

感谢this blog entry我找到TimingFramework,现在它甚至是半透明的,淡入淡出,鼠标悬停时100%不透明等。与SystemTray和TrayIcon一起行为几乎与Outlook一样。

哦,我必须注意,除了second链接之外,我用

淡出
AWTUtilities.setWindowOpacity(window, op);

答案 2 :(得分:0)

你可以写一个驻留在系统托盘中的java程序,但我不确定是否有跨平台兼容的方法来执行此操作。也许你必须为Win,Mac,Linux等使用特定于平台的库...

我只是创建一个消息窗口并为其设置动画。然后添加SystemTray支持,瞧,你已经完成了。

在Delphi中,你可以很快地完成这项工作,但是你不能轻易地重用你的java逻辑

答案 3 :(得分:0)

您可以在“静音”模式下运行程序,默认情况下不创建任何窗口,可能只是任务栏中的一个小图标,双击时将打开设置窗口。该程序将在后台运行,并在事件发生时创建具有设置焦点的窗口。

但在我看来,幻灯片窗口或至少是气球工具提示是一个更好的主意。