我正在使用internalFrames构建GUI。我有一个菜单有不同的选项,每当我选择一个新选项时,我希望它创建该特定的框架。但是,如果我第二次单击该选项时已经创建了“选项框架”,那么我只希望该框架位于其他框架的顶部(因为它们的大小相同,并且将位于彼此的顶部)。 这是我使用的一些方法:
当我点击名为“Home”
的menuOption时,会创建此方法protected void createFrameHome()
{
NewFrame frame = new NewFrame();
desktop.add(frame);
try {
frame.setSelected(true);
} catch (PropertyVetoException e) {
e.printStackTrace();
}
}
当我点击名为“Travel”的menuOption
时,会创建此方法protected void createFrameTravel()
{
NewFrame frame = new NewFrame();
frame.getContentPane().add(table, BorderLayout.NORTH);
desktop.add(frame);
try {
frame.setSelected(true);
} catch (PropertyVetoException e) {
e.printStackTrace();
}
}
框架创建:
class NewFrame extends JInternalFrame {
public NewFrame() {
setSize(700, 500);
setVisible(true);
}
}
现在您可以看到我每次调用这些方法时都会创建一个新帧。我已经尝试了不同的东西让它工作,但似乎没有工作..我有例如使用一个变量,所以它不会创建一个新的框架,但它也不会做frame.setSelected(true);
部分。
有没有人知道这方面的方法?我可以以某种方式从之前选择框架吗?
答案 0 :(得分:0)
通过使用一个变量来解决它,如果创建了框架,则将其设置为true