我想要的是制作一个新的 JFrame,保持我当前的 JFrame 可见,但不创建一个新的窗口/程序。我不能很好地解释它,所以这里是我的意思的图片:
http://screensnapr.com/e/mkCMlm.png
抱歉,如果这以任何方式令人困惑。任何帮助表示赞赏。
我想要的是制作一个新的 JFrame,保持我当前的 JFrame 可见,但不创建一个新的窗口/程序。我不能很好地解释它,所以这里是我的意思的图片:
http://screensnapr.com/e/mkCMlm.png
抱歉,如果这以任何方式令人困惑。任何帮助表示赞赏。
你可以试试http://docs.oracle.com/javase/tutorial/uiswing/components/internalframe.html
您也可以尝试使用对话框而不是新窗口的框架。
如果我理解正确,您需要 JInternalFrame,它是 swing 中的一个特殊组件,位于名为 Desktop 的容器内。所以如果你想有这样的行为:
你肯定需要在你的 JFrame 中有一个名为JDesktopPane的容器,然后你可以像这样在这个容器中添加 JInternalFrame:
MyInternalFrame frame = new MyInternalFrame();
frame.setVisible(true);
desktop.add(frame);
try {
frame.setSelected(true);
} catch (java.beans.PropertyVetoException e) {ex.printStackTrace();}
有关更多信息,您可以查看官方 oracle 文档或Java2SE 代码示例