如何让新打开的jframe在屏幕上具有相同的属性,如大小和位置。感谢
如果您只对大小和位置感兴趣JFrame.getBounds返回以下属性:
newFrame.setBounds(oldFrame.getBounds());
public static void main(String args[]) throws Exception {
final JFrame oldFrame = new JFrame("Test");
oldFrame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
JFrame newFrame = new JFrame("Test");
newFrame.setBounds(oldFrame.getBounds());
newFrame.setVisible(true);
}
});
oldFrame.setSize(400, 300);
oldFrame.setVisible(true);
}
@Sam说,创建新的TopLevelContainer不是一个好主意,最好是重用现有的JFrame,只替换/切换其内容JPanel,如果你需要/想要显示更多的TopLevel Container,那么其他人会通过JDialog
请检查LayoutManagers是如何工作的(有示例),以及Java2s.com 上关于Swing的大量示例