。JDialog上的.setModal()方法

问题描述 投票:1回答:2

我要设置为i,以便在子窗口处于活动状态时无法访问父窗口。我正在使用JDialog类的.setModal()方法,但似乎无法正常工作。

   if (clickEvent.getSource().equals(addCheckout1)){

        SupermarketCheckoutGUI checkout1 = new SupermarketCheckoutGUI();
        checkout1.setVisible(true);
        checkout1.setSize(670, 400);

        checkout1.setModal(false);
    }

仅检查一下,我已经尝试过对与错,但是没有变化。

java focus jdialog
2个回答
1
投票

docs

注意:更改可见对话框的模态直到隐藏然后再次显示之前可能没有任何效果。

尝试在setModal(true)之前呼叫setVisible

但是不建议使用setModal,而应该调用setModalityType(您需要的类型可能是APPLICATION_MODAL),请选中此tutorial


0
投票

尝试

GP = new JDialog(f,"Game Over",Dialog.ModalityType.DOCUMENT_MODAL);
© www.soinside.com 2019 - 2024. All rights reserved.