rt,我从一个java程序导航到(nav)另一个java界面上,此时如果此java界面上有一个JFileChooser对话框的话,我想调用某个method来关闭它,而不是用鼠标来关闭它。请问调用何种method可以达到此目的呢,谢谢了,好像它没有类似的close(),dispose()方法啊!

解决方案 »

  1.   

    楼上的,setvisible(false)不行的,我已经试过了,它只是将filedialog里面的组件全部隐藏,而对话框本身没有隐藏,而且它也没有达到将对话框资源释放的目的,请问有其他方法么,谢谢了
      

  2.   

    哈哈,试了一下,实现了自己的思路,应该也是可以用。
    NewFileChooser中getDialog获得的就是文件选择对话框对象,可以使用setVisible(),dispose().但是:问题是,你对话框出来后,你在哪里控制它关闭???
    用代码控制,你代码要写在chooser.show之后,而之后才关闭,人家chooser早关了。
    用按钮控制,chooser出现以后,没办法再去按主窗口的按钮了 :o
    public class NewFileChooser extends JFileChooser {    public NewFileChooser() {
            super();
        }    /* (non-Javadoc)
         * @see javax.swing.JFileChooser#createDialog(java.awt.Component)
         */
        protected JDialog createDialog(Component parent) throws HeadlessException {
            dialog = super.createDialog(parent);
            return dialog;
        }    /**
         * @return Returns the dialog.
         */
        public JDialog getDialog() {
            return dialog;
        }    private JDialog dialog;}
      

  3.   

    to yonghar(ohno),是用代码控制,我已经解决了
    可以调用CancelSelection()方法就可以了,呵呵不过想问另外一个问题,有没有什么方法取得JFrame上存在的模态窗口?谢谢了,呵呵
      

  4.   

    用控件的dispose方法,彻底销毁就可以了