【发布时间】:2016-08-16 09:36:15
【问题描述】:
我的 GridBagLayout 有一些问题。我创建了一个 JPanel(在本例中称为 mainPanel),其布局已设置为 GridBagLayout。我已经为每个 JButton 指定了约束,并将约束添加到每个按钮。现在,当我运行我的代码时,无论我在约束中指示的 gridx/gridy 值如何,按钮总是彼此相邻。此外,当我希望一个按钮出现在右上角、左上角和南边时,按钮始终位于 JFrame 的中心。
import javax.swing.*;
import java.awt.*;
public class test {
public static void main (String[] args) {
myJFrame test = new myJFrame();
}
}
class myJFrame extends JFrame {
public myJFrame () {
setSize(500,500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mainPanel myPanel = new mainPanel();
add(myPanel);
setVisible(true);
}
}
class mainPanel extends JPanel {
public mainPanel(){
setLayout(new GridBagLayout());
GridBagConstraints c = new GridBagConstraints();
c.anchor = GridBagConstraints.NORTHWEST;
c.gridx = 1000;
c.gridy= 1;
add(new JButton("1"),c);
c.anchor = GridBagConstraints.NORTHEAST;
c.gridx = 100;
c.gridy= 1;
add(new JButton("2"),c);
c.anchor = GridBagConstraints.SOUTH;
c.gridx = 200;
c.gridy= 1;
add(new JButton("3"),c);
}
}
【问题讨论】:
标签: java swing layout-manager gridbaglayout