相关疑难解决方法(0)

我怎样才能在Java中实现这种可扩展的布局?灵活的BoxLayout等

我希望能够有三个JPanels p1 p2和p3,并让它们像这样布局:

布局
我一直在玩FlowLayout,BoxLayout等,但我不确定我是否朝着正确的方向前进.我是Java的新手,所以如果我很诚实,我不知道该怎么办.

我喜欢BoxLayout如何工作,调整面板的大小,但我希望能够给它一些宽度属性.

我没有使用视觉设计师,这是我目前的窗口代码:

private void initialize() {
    Dimension dimensions = Toolkit.getDefaultToolkit().getScreenSize();

    frame = new JFrame();
    frame.setLayout(new GridLayout(1, 3));
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setBounds(dimensions.width / 2 - WINDOW_WIDTH / 2,
            dimensions.height / 2 - WINDOW_HEIGHT / 2, 
            WINDOW_WIDTH, WINDOW_HEIGHT);

    JPanel p1 = new JPanel(new BorderLayout());
    p1.setBackground(Color.red);

    JPanel p2 = new JPanel(new BorderLayout());
    p2.setBackground(Color.black);  

    JPanel p3 = new JPanel(new BorderLayout());
    p3.setBackground(Color.blue);       

    frame.add(p2);

    frame.add(p1);  
    frame.add(p3);
}
Run Code Online (Sandbox Code Playgroud)

任何指针赞赏!

编辑:感谢mKorbel,我已经设法让它按照我想要的方式工作.正确的列没有完全像我要做的那样布局,但实际上我改变了主意并决定保留其他布局.

PanelWindow
代码:

import java.awt.*;
import javax.swing.*;

public class PanelWindow extends JFrame {

    private static final long …
Run Code Online (Sandbox Code Playgroud)

java swing layout-manager gridbaglayout boxlayout

4
推荐指数
1
解决办法
1947
查看次数

标签 统计

boxlayout ×1

gridbaglayout ×1

java ×1

layout-manager ×1

swing ×1