是的,这个问题无处不在。但是所有(工作)解决方案都使用AWTUtilities工具包,这是受限制的。Java - ol透明JFrame,不受限制libs
所以。我只想控制窗户的不透明度。没有必要塑造或不需要涂抹。只是一个透明的contentPane(简单),和一个透明的JFrame背景(可笑困难)。
我可以发誓昨天我得到了正确的东西组合,但现在我似乎无法重现它。也有一些解决方案在那里没有使用AWTUtilities,但他们不工作...有人有一个很好的解决方案?
我的失败代码的例子:
public static void main(String[] args) {
JFrame test = new JFrame();
test.setSize(400, 400);
test.setLocationRelativeTo(null);
test.setUndecorated(true);
test.setBackground(new Color(0, 0, 0, 0));
test.getContentPane().setBackground(new Color(0,0,0,0));
test.setVisible(true);
}
但这只是让一个白色正方形。关闭,但没有雪茄。我也尝试覆盖绘画方法,并且有人在谈论关于抛出Alpha通道的问题,但是这使它变成了黑色(当然)。所以...堆栈溢出它。
如果有确切的答案,请点我,然后马上删除。
更新 每在评论的请求,这里是我是如何来到这里的历史记录:
第一个环节大家到达是how to create translucent and shaped windows.这在类似的还有几行” ......帧半透明带75%的不透明度。“所以......看起来他们的定义是一样的,至少在那篇文章中。不幸的是他们使用图书馆。
我能追下去几个链接:
非工作的“工作”的解决方案是在http://www.java-gaming.org/index.php?topic=24635.0报道这表明一些希望,但我无法得到它的工作。
http://techgearup.wordpress.com/2008/09/19/transparent-jframe-background/是一种使用屏幕截图的黑客方式,并在其他几个地方复制。
你可以使用Java 7 PLZ回复?你能链接到一些工作解决方案,以便我们看到你所尝试过的吗? –
请不要[confound](http://stackoverflow.com/questions/3517722/java-transparent-jscrollpane/3518047#3518047)_opacity_和_transparency_。 – trashgod
同意,这是Java 7的新功能之一:http://download.oracle.com/javase/tutorial/uiswing/misc/trans_shaped_windows.html –