public Panel(){
setLayout(new GridBagLayout());
GridBagConstraints c = new GridBagConstraints();
c.insets = new Insets(10,10,10,10);
c.gridx = 0;
c.gridy = 0;
add(l1 , c);
c.gridx = 1;
c.gridy = 0;
add(tf1 , c);
c.gridx = 0;
c.gridy = 1;
add(l2 , c );
c.gridx = 1;
c.gridy = 1;
add(tf2 , c);
}
如何将内容与左上角对齐?
答案 0 :(得分:1)
使用锚点,它们是GridBagConstraints类的一部分,它们用于告诉Java组件的去向。例如,如果您希望它们出现在左上角,您只需使用:
c.anchor = GridBagConstraints.LINE_START;
您也可以使用
c.anchor = GridBagConstraints.NORTHWEST;
Altough我更喜欢第一个。您可以阅读有关此内容的更多信息,并在Oracle文档中查看所有可用选项here。
更重要的是,如果你没有赋予重量值,锚将无效。如果你没有像Java那样设置一个值,那么所有组件都会在中心聚集在一起。 Weighty可以取0到1之间的值。例如:
c.weighty = 0.5;
答案 1 :(得分:0)
尝试在c
声明后添加以下行:
c.anchor = GridBagConstraints.NORTHWEST;
答案 2 :(得分:0)
使用下面的JPanel:
add(new JPanel(), new GridBagConstraints(0,2,2,1,1.0,1.0, GridBagConstraints.WEST, GridBagConstraints.BOTH, new Insets(2,2,2,2),1,1));