如何让新打开的 jframe 具有相同的属性,如屏幕上的大小和位置。谢谢
问问题
1025 次
2 回答
1
如果您只对大小和位置感兴趣, 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);
}
于 2011-05-31T07:40:13.727 回答
1
@Sam 即时创建新的TopLevelContainer不是一个好主意,最好重用现有的JFrame并替换/切换其内容JPanel,如果您需要/想要显示更多的 TopLevelContainers,那么其他人会通过JDialog(s)
请检查LayoutManagers的工作原理(有示例)以及Java2s.com上有关 Swing 的大量示例
于 2011-05-31T08:01:28.313 回答