JDialog 設定為應用程式模式後會發生什麼?


JDialog Modal 型別 APPLICATION_MODAL 阻止所有頂級視窗,並對它有約束。以下是一個使用應用程式模式設定 JDialog 的示例

示例

import java.awt.Cursor;
import java.awt.Dialog.ModalityType;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import javax.swing.AbstractAction;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
public class SwingDemo {
   public static void main(String[] args) {
      JFrame frame = new JFrame();
      frame.setSize(new Dimension(600, 400));
      JDialog dialog = new JDialog(frame, "New",ModalityType.APPLICATION_MODAL);
      dialog.setSize(300, 300);
      frame.add(new JButton(new AbstractAction("Click to generate") {
         @Override
         public void actionPerformed(ActionEvent e) {
            frame.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
            dialog.setVisible(true);
         }
      }));
      frame.setVisible(true);
   }
}

輸出

現在,點選它生成一個新的對話方塊。由於它不是無模式,因此你不能同時關閉兩個對話方塊。你必須先關閉新的對話方塊,然後你才能關閉第一個對話方塊:


更新日期: 30-7-2019

236 次瀏覽

開啟你的 職業

完成課程以獲得認證

開始學習
廣告
© . All rights reserved.