我正在用java编写程序GUI。我想拥有一个 JLayeredPane 作为我的 JFrame 的 ContentPane。在我的 JLayeredPane 上有两层:一层是 Canvas(canvas1),另一层是 JPanel(jPanel5)。我使用 Netbeans IDE 并生成以下代码:
canvas1.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
canvas1.setBounds(0, 0, -1, -1);
jLayeredPane1.add(canvas1, javax.swing.JLayeredPane.PALETTE_LAYER);
jPanel5.setBounds(0, 0, 670, 550);
jLayeredPane1.add(jPanel5, javax.swing.JLayeredPane.DEFAULT_LAYER);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLayeredPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 670, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLayeredPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 553, Short.MAX_VALUE)
);
盒();
当我运行我的程序时,我看到了一个奇怪的事件!当我改变 tje JFrame 的大小时;主 JLayeredPane 的大小没有改变。我为组件使用了不同的背景颜色,对我来说很明显 JLayered 的大小是永久的,但是我在它的属性中将它设置为垂直和水平可调整大小。JFrame 是可调整大小的,但主 jLayeredPane 的大小是永久的。
如何使 jLayeredPane 调整为我的 JFrame 的大小?!
谢谢你