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);
}
如何将内容对齐到左上角?
最佳答案
使用 anchor ,它们是 GridBagConstraints 类的一部分,用于告诉 Java 组件去哪里。例如,如果您希望它们出现在左上角,您只需使用:
c.anchor = GridBagConstraints.LINE_START;
您还可以使用
c.anchor = GridBagConstraints.NORTHWEST;
虽然我更喜欢第一个。您可以阅读有关此内容的更多信息并查看所有可用选项 here参见 Oracle 文档。
还有一件事,如果你不给权重赋值, anchor 将不起作用。如果你没有像 Java 所说的那样指定一个值,所有组件都会聚集在中心。权重可以取 0 到 1 之间的值。例如:
c.weighty = 0.5;
关于java - 如何让 JLabel 和 JTextArea 对齐到屏幕的左上角而不是中心,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31841214/