Java - 在对话框等待输入时无法设置对话框模式以启用背板

时间:2011-10-04 09:36:08

标签: java swing

  for(int i=0;i<index_imageList.getModel().getSize();i++)
   {

   //displaying the image viewer 
   ImageZoomerFrame imageZoomer = new ImageZoomerFrame(image, zoom_percentage, imagePath);
   imageZoomer.setSize(Toolkit.getDefaultToolkit().getScreenSize());
   imageZoomer.validate();

   //creating JOptionPane with Input Method

   JOptionPane pane = new JOptionPane();
   pane.setMessage("Please Enter Data To Index");
   pane.setWantsInput(true);



   // Pachking pane with dialog
   JDialog dialog= pane.createDialog(this, "Index");
   dialog.pack();
   dialog.setAlwaysOnTop(true);
   dialog.setVisible(true); 

    //wait for the input
   index=pane.getInputValue().toString();

    //dispose image viewer
   imageZoomer.dispose();
  }

在这个Java代码之后,JOptionPane InputDialog显示我无法控制imageviewer框架 如果我添加一个dialog.setModal(false);,那么它就不会等待输入而且forloop就会继续。

我真正需要的是能够控制imageviewer帧以放大或缩小,同时让程序等待用户输入继续。

2 个答案:

答案 0 :(得分:2)

将(非模态)JDialog与输入框,OK(和取消)按钮一起使用,向OK按钮添加动作处理程序,然后放大该动作处理程序。

答案 1 :(得分:1)

为什么要将JOptionPaneJDialog相乘,您可以自定义JOptionPane或将JComponent添加到JOptionPane,没有什么比post { @Andrew Thompson关于那个