【问题标题】:Transparent JFrame/JWindow on Mac OSX with Java 7带有 Java 7 的 Mac OSX 上的透明 JFrame/JWindow
【发布时间】:2012-10-22 22:05:44
【问题描述】:

我们有一个屏幕共享小程序,它打开一个 Swing JFrame 并使用 Robot 类来捕获空框架后面的屏幕。

用户可以单击框架并与小程序后面的任何内容进行交互。 这在 Windows 上运行良好,并且曾经与 Apple 的 Java 版本一起工作,但在 Java 7 for Mac 上它不起作用。鼠标点击不会通过 JFrame。

JFrame 使用:

setAlwaysOnTop(true);
setUndecorated(true);

尝试使用:

AWTUtilities.setWindowOpaque(false);

或者

setBackground(new Color(0, 0, 0, 0));

使用 Apple 的版本:

getRootPane().putClientProperty("apple.awt.draggableWindowBackground", Boolean.FALSE);

调用成功了,但这不再有效。

请指教。

谢谢, 艾隆

【问题讨论】:

标签: java macos swing jframe transparent


【解决方案1】:

这是 jdk 7 中的错误(将在 jdk 9 中修复)。只有使用 jdk 6 的方法。

link to bug database

附:你找到解决这个问题的办法了吗?

【讨论】:

  • @JeroenKetelaar 我在 Mac 上使用了 jdk 6。
  • 是的,虽然现在大多数人都使用 Java 7,但是当这个问题发生时,我无法为其他人写东西。不过感谢您的更新!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-05-28
  • 2011-06-13
  • 1970-01-01
  • 2011-03-05
  • 1970-01-01
  • 1970-01-01
  • 2012-05-14
相关资源
最近更新 更多