JFrame 上有最大化、最小化和关闭按钮,但是JFrame 无法弹出模式窗体。
JDialog 可以弹出模式窗体,但是JDialog 上只有一个关闭按钮,没有最大化、最小化按钮。
如何使JFrame 弹出模式窗体 ?或者如何使JDialog上有最大化、最小化和关闭按钮。

解决方案 »

  1.   

    基本上两种做法:
    1、JDialog方法:dialog.setUndecorated(true); 然后自己重写整个外框;
    2、JFrame方法:父窗口隐藏;子窗口监听windowDeactivated,强制requestFocus();
      

  2.   

    JFrame模态两种方法: 
    1)   JNI 
    2)   
    frame.addWindowFocusListener(new   WindowFocusListener()   { 
        public     void   windowGainedFocus(WindowEvent   e)   {} 
        public     void   windowLostFocus(WindowEvent   e)     { 
                frame.toFront(); 
        }   
    }   ); 这里有讨论帖:
    http://topic.csdn.net/t/20060929/15/5056950.html不过话说回来,为什么会有这种需要呢?
      

  3.   

    如果用Swing的话目前这个问题无解.
    如果是用SWT的话,这个问题就不是问题.