Java 如何解决在JLayeredPane上发布JPanel的问题

Java 如何解决在JLayeredPane上发布JPanel的问题,java,swing,jframe,jpanel,Java,Swing,Jframe,Jpanel,我对JPanel位置和JLayeredPane上的间隙有一些问题 我创建了四个JLayeredPane,并在其中插入了一个JPanel,其中有一些边界之间的间隙(代码如下) 之后,我检查了间隙大小。它们沿水平轴不相等 import java.awt.Color; import java.awt.Dimension; import java.awt.GridLayout; import java.awt.Toolkit; import javax.swing.JFrame; import jav

我对JPanel位置和JLayeredPane上的间隙有一些问题

我创建了四个JLayeredPane,并在其中插入了一个JPanel,其中有一些边界之间的间隙(代码如下)

之后,我检查了间隙大小。它们沿水平轴不相等

import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.Toolkit;

import javax.swing.JFrame;
import javax.swing.JLayeredPane;

public class setting {

    public static void main(String[] args) {

        //get size window
        Dimension tk = Toolkit.getDefaultToolkit().getScreenSize();

        int  width = (int) tk.width;
        int  hight = (int) tk.height;


        // setting for window 
        JFrame frame = new JFrame(); 
        frame.setLayout(new GridLayout(1,4, 0, 0));
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().setBackground(Color.black);
        frame.setExtendedState(JFrame.MAXIMIZED_BOTH); 



        // set panels for window
        JLayeredPane panel_0 = new JLayeredPane();
        panel_0.setBackground(Color.white);
        panel_0.setOpaque(true);
        frame.add(panel_0);



        JLayeredPane panel_1 = new JLayeredPane();
        panel_1.setBackground(Color.yellow);
        panel_1.setOpaque(true);
        frame.add(panel_1);

        JLayeredPane panel_2 = new JLayeredPane();
        panel_2.setBackground(Color.green);
        panel_2.setOpaque(true);
        frame.add(panel_2);


        JLayeredPane panel_3 = new JLayeredPane();
        panel_3.setBackground(Color.blue);
        panel_3.setOpaque(true);
        frame.add(panel_3);

        //insert_panels
        JLayeredPane insert_panel_0 = new JLayeredPane();
        insert_panel_0.setBackground(Color.black);
        insert_panel_0.setOpaque(true);

        insert_panel_0.setBounds(width/400,hight/200,width/4 - width/200,hight/10);

        JLayeredPane insert_panel_1= new JLayeredPane();
        insert_panel_1.setBackground(Color.black);
        insert_panel_1.setOpaque(true);
        insert_panel_1.setBounds(width/400,hight/200,width/4 - width/200,hight/10);

        panel_1.add(insert_panel_0);
        panel_2.add(insert_panel_1);

        frame.setVisible(true);
    }

}
你能帮我吗


是否存在其他方法来填补空白并在JLayeredPane上定位JPanel?

您需要描述更多您试图实现的目标。为什么要使用JLayeredPanes?最后一帧应该是什么样子的。似乎您在另一个问题中找到了解决方案:。如果是这样,那么删除这个问题,这样人们就不会花时间回答已经解决的问题。如果没有,那么你需要澄清这个问题。你需要更多地描述你正在努力实现的目标。为什么要使用JLayeredPanes?最后一帧应该是什么样子的。似乎您在另一个问题中找到了解决方案:。如果是这样,那么删除这个问题,这样人们就不会花时间回答已经解决的问题。如果没有,那么你需要澄清这个问题。