我有一个Jarame和一个JPanel,其中有一个带有ImageIcon()的JLabel。一切工作完美,问题是我现在想要添加另一个JPanel与所有其他东西像按钮等等的JFrame。但它仍然显示背景图像上方,而第二个JPanel则没有显示。一个框架中的多个JPanel /有一个支架图像和另一个顶层组件的图层
有人可以帮助我吗? 这里是我的代码的摘录:
JFrame window = new JFrame("Http Download");
/*
* Background Section
*/
JPanel panel1 = new JPanel();
JLabel lbl1 = new JLabel();
/*
* Component Section
*/
JPanel panel2 = new JPanel();
JLabel lbl2 = new JLabel();
/*
* Dimension Section
*/
Dimension windowSize = new Dimension(800, 600);
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
public HTTPDownloadGUI() {
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panel1.setLayout(null);
panel1.setSize(windowSize);
panel1.setOpaque(false);
panel2.setLayout(null);
panel2.setSize(windowSize);
panel2.setOpaque(false);
lbl1.setSize(windowSize);
lbl1.setLocation(0, 0);
lbl1.setIcon(new ImageIcon(getClass().getResource("bg1.png")));
panel1.add(lbl1);
lbl2.setBounds(0, 0, 100, 100);
//lbl2.setIcon(new ImageIcon(getClass().getResource("bg2.png")));
lbl2.setBackground(Color.GREEN);
panel2.add(lbl2);
panel1.add(panel2);
window.add(panel1);
int X = (screen.width/2) - (windowSize.width/2);
int Y = (screen.height/2) - (windowSize.height/2);
window.setBounds(X,Y , windowSize.width, windowSize.height);
window.setVisible(true);
}
哪些标签,以及哪个框架和哪个面板是您的意思?你可以尝试多解释一下吗? – user1905203
更新了例子... – MadProgrammer
太棒了,它完美的作品。我的错误是,我将panel2添加到panel1而不是label1。感谢兄弟们的帮助! – user1905203