【问题标题】:GridBagLayout align leftGridBagLayout 左对齐
【发布时间】:2014-06-04 00:29:11
【问题描述】:

这是我的代码:

                JPanel panel = new JPanel();
                JPanel p = new JPanel(new GridBagLayout());
                p.setBackground(Color.green);
                GridBagConstraints c1 = new GridBagConstraints();
                c1.insets = new Insets(0, 0, 0, 0);
                c1.anchor = GridBagConstraints.WEST;
                int index = 0;
                int i2 = 0;
                for(String[] data : attribute.choices){
                    JCheckBox checkbox = new JCheckBox(data[0]);
                    checkbox.setBackground(Color.red);
                    checkbox.setSelected(false);
                    c1.gridx = index % 2;
                    c1.gridy = index / 2;
                    p.add(checkbox, c1);
                    index++;
                }
                panel.add(p);

结果如下:

.

我希望复选框(红色区域)位于右侧。我该怎么做?

【问题讨论】:

    标签: java swing alignment gridbaglayout


    【解决方案1】:

    我希望复选框(红色区域)位于右侧。

    默认情况下,面板使用“居中对齐”的 FlowLayout。您可以将对齐方式更改为right aligned

    //panel.add(p);
    panel.setLayout( new FlowLayout(FlowLayout.RIGHT) );
    panel.add(p);
    

    【讨论】:

    • 这行不通。如您所见,JPanel p 具有绿色背景并且已经具有全宽。复选框(绿色)是居中的。
    • @JochemGruter,你试过了吗?
    猜你喜欢
    • 2012-10-05
    • 2012-07-09
    • 2015-04-05
    • 1970-01-01
    • 2013-01-23
    • 2012-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多