在 Java 中,是否有可能JPanel
跳过绘制其背景,从而除了其上的组件之外是透明的?
jjnguy
问问题
47148 次
5 回答
38
setOpaque(false)
它会将背景绘制传递给其父级,后者可能会绘制自己的背景。
您可以进行屏幕捕获,然后使用它来绘制面板的背景。
于 2008-09-10T18:19:21.130 回答
5
这篇文章似乎有一些关于如何在 Java 中创建形状和透明窗口的方便信息:
https://docs.oracle.com/javase/tutorial/uiswing/misc/trans_shape_windows.html
于 2008-09-10T18:22:47.160 回答
2
从技术上讲,JPanel 可能一开始是不透明的。这对于 1.5(或 1.4?)中的 Gtk 外观和感觉是正确的,但据我所知,没有其他 PL&F。
于 2008-09-11T12:46:34.667 回答
2
如果您使用的是 NetBeans,请执行以下步骤:-
- 右键单击
JPanel
。 - 向下滚动并搜索 (( Opaque ))。它必须在那里。
- 取消选中它。
- Now your
JPanel
background will be removed and what will appear inJPanel
Background is your Background ofJFrame
.
于 2017-06-06T13:49:26.403 回答
1
class TransparentJPanel extends JPanel
{
TransparentJPanel()
{
super() ;
this.setOpaque( false ) ; // this will make the JPanel transparent
// but not its components (JLabel, TextField etc.)
this.setLayout( null ) ;
}
}
于 2014-03-28T12:32:49.207 回答