5

我正在尝试通过将窗口调到前面然后在屏幕上为用户闪烁图标来建立用户警报机制。关于这种方法,我有两个问题:

  1. 如何在 Java 中找到当前所在的窗口,然后将其最小化并置于最前面?
  2. Java中是否有一种机制可以让我简单地显示图标一两秒钟然后将其隐藏在屏幕中间?如果没有,实现这一目标的方法是什么?

非常感谢任何回复。

4

2 回答 2

12

如何在 Java 中找到当前所在的窗口,然后将其最小化并置于最前面

Window[] allWindows = Window.getWindows(); 
  • Top-Level Containers从当前 JVM返回所有数组,例如J/Frame, J/Dialog( JOptionPane), J/Window,

  • 你可以测试(例如)if (allWindows[i] instanceof JFrame) {

  • 然后WindowState返回WindowEvent

通过将窗口调到前面,然后在屏幕上为用户闪烁图标

使用 undecodated JDialog(works toFront, toBack) with

  • 只创建一次

  • setDefaultCloseOperations(HIDE_ON_CLOSE)

  • 用于Swing Timer隐藏JDialog

Java中是否有一种机制可以让我简单地显示图标一两秒钟然后将其隐藏在屏幕中间?如果没有,实现这一目标的方法是什么?

  • 看看Java Translucent Window,放在那里IconJLabelJButton

用于在两个或多个之间Swing Timer隐藏或切换来闪烁(三个或四个为好)IconIcons

于 2012-08-14T08:18:57.580 回答
2

我认为获取窗口祖先的最简单方法是: SwingUtilities.getWindowAncestor(yourComponent);

于 2012-08-14T14:42:33.683 回答