2012-10-22 67 views
3

我們有一個屏幕共享小程序,它打開一個Swing JFrame並使用Robot類捕獲空白框後面的屏幕。使用Java 7的Mac OSX上的透明JFrame/JWindow

用戶可以點擊框架並與applet背後的任何謊言進行交互。 這可以在Windows上正常工作,並且用於使用Apple的Java版本,但使用Java 7 for Mac時無法使用。鼠標點擊不通過JFrame。

JFrame中使用:

setAlwaysOnTop(true); 
setUndecorated(true); 

嘗試使用:

AWTUtilities.setWindowOpaque(false); 

或者

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

隨着蘋果版本:

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

電話打了個招數,但這已經不起作用了。

請指教。

謝謝, Eilon

+1

嘗試發佈[SSCCE](http://sscce.org)以獲得更好的幫助...... –

+1

有沒有人找到解決此問題的方法? – user1766744

+0

不知道什麼時候它被修復了,但它在java中適用於這個代碼:http://alvinalexander.com/source-code/java/how-create-transparenttranslucent-java-jframe-mac-os-x – kritzikratzi

回答

1

它在JDK 7錯誤(將被固定在JDK 9)。這裏只有這樣,才能使用JDK 6

link to bug database

附:你有沒有找到這個問題的解決方案?

+0

任何更新? –

+0

@JeroenKetelaar我在Mac上使用jdk 6。 – milgoff

+0

這是有效的,儘管現在大多數人使用Java 7,所以在發生此問題時,我無法爲其他人寫些東西。感謝您的更新,但! –