前面的Java JFrame

时间:2013-08-12 08:35:29

标签: java swing jframe jdialog

实际上,当我打电话给我的JFrame时,我确实遇到了问题。

我有一个来自JDialog的课程。它在我启动时弹出 非常酷的java游戏。如果我现在例如想要加载游戏我按 加载按钮和另一个JDialog打开以选择要加载的游戏。 所以我现在要JDialogs open =>启动对话框和加载对话框。 好吧,当我选择一个游戏并加载它时,负载jdialog处理JFrame 对于加载的游戏出现,然后启动jdialog来 前面再次。

我不希望启动对话框出现在前面!

我已经将以下代码行添加到我的游戏JFrame中:

this.toFront()

没有任何影响。

如何将JFrame放到前面?

3 个答案:

答案 0 :(得分:1)

JDialog个对象应该保持在最顶层,并且优先于任何其他帧,但是如果要禁用它,可以使用以下函数:

jDialog.setAlwaysOnTop(false);

然后,您可以在JFrame上调用以下函数:

this.toFront();

答案 1 :(得分:0)

如果您尝试在加载按钮的单击事件上打开JFrame,您应该在其事件处理程序上尝试以下代码

JFrame o = new JFrame();
  o.setVisible(true);
  dispose();

答案 2 :(得分:0)

我认为你的意思是你不能再与你的JFrame交互,因为Dialog会阻止它。我现在不知道你的启动对话框是做什么的,但你可以把它放到JPanel或新的JFrame中!

如果您使用

JOptionPane.showMessageDialog();

您无法再与JFrame交互,首先您必须关闭对话框。

创建一个JPanel和一个JFrame,并在JPanel的对话框中放置它,如果单击开始按钮,则打开新的框架。