当前位置: 首页 > 面试题库 >

我可以以非模式方式使用Java JOptionPane吗?

佴博实
2023-03-14
问题内容

我正在开发一个应用程序,当某个动作发生时,该应用程序会弹出一个JOptionPane。我只是想知道是否有可能当JOptionPane弹出时如何继续使用后台应用程序。当前,当弹出JOptionPane时,除非关闭JOptionPane,否则我无能为力。

编辑

感谢您的答复和信息。认为不适当地将此功能排除在应用程序之外,因为它看起来可能比不必要的麻烦。


问题答案:

该文档明确指出,通过showXXXDialog方法创建的所有对话框都是模态的。

您可以使用的是直接使用的方法(该方法来自docs)以及JDialog继承自Dialog
的setModal方法

 JOptionPane pane = new JOptionPane(arguments);
 // Configure via set methods
 JDialog dialog = pane.createDialog(parentComponent, title);
 // the line below is added to the example from the docs
 dialog.setModal(false); // this says not to block background components
 dialog.show();
 Object selectedValue = pane.getValue();
 if(selectedValue == null)
   return CLOSED_OPTION;
 //If there is not an array of option buttons:
 if(options == null) {
   if(selectedValue instanceof Integer)
      return ((Integer)selectedValue).intValue();
   return CLOSED_OPTION;
 }
 //If there is an array of option buttons:
 for(int counter = 0, maxCounter = options.length;
    counter < maxCounter; counter++) {
    if(options[counter].equals(selectedValue))
    return counter;
 }
 return CLOSED_OPTION;


 类似资料:
  • 问题内容: 我正在使用大猩猩架构根据用户的表单提交来填充结构。我的结构包含,并且我目前收到以下错误: 如何在要使用大猩猩架构填充的结构中使用? 问题答案: 我创建了一个要点(https://gist.github.com/carbocation/51b55297702c7d30d3ef),它显示了解决此问题的一种方法。您需要为以下四种类型的每一种创建一个:sql.NullString,sql.Nu

  • 问题内容: 最近几天,我一直在与Numpy和matplotlib一起玩。我在尝试使matplotlib绘制函数而不阻止执行时遇到问题。我知道这里已经有很多线程在问类似的问题,并且我已经在Google上搜索了很多,但是没有设法使这项工作有效。 我曾尝试按照某些人的建议使用show(block = False),但是我得到的只是一个冻结的窗口。如果我简单地调用show(),则将正确绘制结果,但执行将被

  • 在过去的几天里,我一直在玩Numpy和matplotlib。我有问题试图使matplotlib图函数不阻塞执行。我知道已经有很多线程在SO上问类似的问题,我已经谷歌了很多,但还没有成功。 我尝试过使用show(block=False),就像一些人建议的那样,但我得到的只是一个冻结的窗口。如果我简单地调用show(),结果会被正确绘制,但执行会被阻止,直到窗口关闭。从我读过的其他线程中,我怀疑sho

  • 我可以使用PHP以编程方式更改文件的路径吗? 例如,更改

  • 问题内容: 我正在重新编写一些代码,并且已经确定了重新创建类的方式,因为存在固定数量的工作表,所以我将它们创建为枚举。这是基于构建器模式与伸缩构建器的可读性来做出的决定。 我获取的代码抓取了一些.xls文件,添加了标头(并从其他.xls文件中读取了一些标头),甚至还有一些子表。然后,它以特定方式将各种工作表合并在一起,以在主要excel工作簿上制作选项卡。我的问题是某些工作簿选项卡采用不同数量的工

  • 我希望我的应用程序允许拥有Facebook,Google,Amazon等帐户的用户能够登录到我的应用程序。这通过AWS Cognito运行良好。 但是,如果用户没有任何登录,应用程序是否可以通过编程方式创建用户登录? > 我不需要实现自己的身份验证机制,也不用担心密码是如何存储的。 根据我的研究,我认为现有的身份验证提供商甚至其他服务(如OpenID)都无法做到这一点。 如果我不想实现自己的登录存