我是一名新手 Java 程序员,我正在尝试研究 BorderLayout 在特定情况下的行为。
假设你有:
JFrame frame = new JFrame();
frame.add(new JLabel("Test"));
JFrame 的默认布局管理器是 BorderLayout。根据 BorderLayout 的 Java 教程,必须始终指定一个位置,例如作者:
frame.add(new JLabel("Test"),BorderLayout.CENTER);
所以我对可以在不指定位置的情况下添加组件这一事实感到困惑。如果我将上面的代码修改为:
JFrame frame = new JFrame();
frame.add(new JLabel("Test"));
frame.add(new JLabel("Test 2"));
frame.add(new JLabel("Test 3",BorderLayout.NORTH);
测试 2 显示在屏幕的左中位置,测试 3 显示在屏幕的左上角。
我的理解是否正确,如果没有指定位置,BorderLayout 将默认为 BorderLayout.CENTER,如果是这样,任何人都可以告诉我这是在哪里记录的吗?我确信它一定记录在某个地方,但我在任何地方都找不到它!
谢谢
最佳答案
http://download.oracle.com/javase/6/docs/api/java/awt/BorderLayout.html
“为了方便起见,BorderLayout 将字符串规范的缺失解释为与常量 CENTER 相同”
关于java - 将组件添加到 BorderLayout 容器而不指定位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6198861/