我尝试做以下事情:
- 使用 a 将组件添加到
JFrameaBorderLayout - 将另一个组件添加到
JFrame
我希望新组件能够“覆盖”旧组件,因为我使用的是BorderLayout. 如果我在调用pack(). 现在,如果我在调用后添加第二个组件pack(),这两个组件仍然可见。例子:
public class Test extends JFrame{
public Test(){
setLayout(new BorderLayout());
add(new JLabel("Quite a long text"));
setVisible(true);
pack();
add(new JLabel("Another text"));
}
}
结果:
public class Test extends JFrame{
public Test(){
setLayout(new BorderLayout());
add(new JLabel("Quite a long text"));
setVisible(true);
add(new JLabel("Another text"));
pack();
}
}
结果:
我尝试添加validate();and repaint();,但这无济于事。这里出了什么问题?