Java基礎之j簡析avax.swing.JOptionPane(一)showMessageDialog

  最近在作swing程序中遇到使用消息提示框的,JOptionPane類其中封裝了不少的方法。很方便的,因而就簡單的整理了一下。如下是官方文檔說明:html

  JOptionPane 有助於方便地彈出要求用戶提供值或向其發出通知的標準對話框。因爲方法數多使 JOptionPane 類可能顯得複雜,但幾乎全部此類的使用都是對下列靜態 showXxxDialog 方法之一的單行調用:java

方法名 描述
 showConfirmDialog  詢問一個確認問題,如 yes/no/cancel。
 showInputDialog  提示要求某些輸入。
 showMessageDialog  告知用戶某事已發生。
 showOptionDialog  上述三項的大統一 (Grand Unification)。

 

  全部這些方法還可能以 showInternalXXX 風格出現,該風格使用內部窗體來保存對話框。此外還定義了多種便捷方法,這些方法重載那些基本方法,使用不一樣的參數列表。數組

  全部對話框都是有模式的。在用戶交互完成以前,每一個 showXxxDialog 方法都一直阻塞調用者。佈局

  這些對話框的基本外形一般與右圖相似,儘管各類外觀從根本上決定着最後結果。尤爲是,外觀能夠調整佈局以適應選項窗格的 ComponentOrientation 屬性。spa

 

  參數:
    這些方法的參數遵照一致的模式:code

parentComponent
定義做爲此對話框的父對話框的 Component。經過兩種方式使用此參數:包含它的 Frame 能夠用做對話框的父 Frame,在對話框的位置使用其屏幕座標。通常狀況下,將對話框緊靠組件置於其之下。此參數能夠爲 null,在這種狀況下,默認的 Frame 用做父級,而且對話框將居中位於屏幕上(取決於 L&F)。
message
要置於對話框中的描述消息。在最多見的應用中,message 就是一個 String 或 String 常量。不過,此參數的類型其實是 Object。其解釋依賴於其類型:
Object[]
對象數組被解釋爲在縱向堆棧中排列的一系列 message(每一個對象一個)。解釋是遞歸式的,即根據其類型解釋數組中的每一個對象。
Component
該 Component 在對話框中顯示。
Icon
該 Icon 被包裝在 JLabel 中並在對話框中顯示。
其餘
該對象經過調用其 toString 方法被轉換爲 String。結果被包裝在 JLabel 中顯示。
messageType
定義 message 的樣式。外觀管理器根據此值對對話框進行不一樣地佈置,而且一般提供默認圖標。可能的值爲:
  • ERROR_MESSAGE
  • INFORMATION_MESSAGE
  • WARNING_MESSAGE
  • QUESTION_MESSAGE
  • PLAIN_MESSAGE
optionType
定義在對話框的底部顯示的選項按鈕的集合:
  • DEFAULT_OPTION
  • YES_NO_OPTION
  • YES_NO_CANCEL_OPTION
  • OK_CANCEL_OPTION
用戶並不是僅限於使用此選項按鈕集合。使用 options 參數能夠提供想使用的任何按鈕。
options
將在對話框底部顯示的選項按鈕集合的更詳細描述。options 參數的常規值是 String 數組,可是參數類型是 Object 數組。根據對象的如下類型爲每一個對象建立一個按鈕:
Component
該組件被直接添加到按鈕行中。
Icon
建立的 JButton 以此圖標做爲其標籤。
其餘
該 Object 經過使用其 toString 方法轉換爲字符串,並使用該結果做爲 JButton 的標籤。
icon
要置於對話框中的裝飾性圖標。圖標的默認值由 messageType 參數肯定。
title
對話框的標題。
initialValue
默認選擇(輸入值)。

  當選擇更改時,調用生成 PropertyChangeEvent 的 setValue 方法。htm

  若是已爲全部輸入 setWantsInput 配置了 JOptionPane,則還能夠偵聽綁定屬性 JOptionPane.INPUT_VALUE_PROPERTY,以肯定什麼時候用戶輸入或選擇了值。對象

  當其中一個 showXxxDialog 方法返回整數時,可能的值爲:blog

    • YES_OPTION
    • NO_OPTION
    • CANCEL_OPTION
    • OK_OPTION
    • CLOSED_OPTION

  

  瞭解了官方的解釋後,固然是要對這些東西進行使用了,具體是使用和各類樣式如面代碼及圖片所示:、遞歸

JOptionPane.showMessageDialog(null, "警告標識提示消息", "標題",JOptionPane.WARNING_MESSAGE);

JOptionPane.showMessageDialog(null, "錯誤標識提示消息.", "標題",JOptionPane.ERROR_MESSAGE);

JOptionPane.showMessageDialog(null, "信息標識提示消息.", "標題",JOptionPane.INFORMATION_MESSAGE);
上面的顯示能夠直接調用默認提示框,其效果是一致的。

JOptionPane.showMessageDialog(null, "提示框");

JOptionPane.showMessageDialog(null, "疑問標識提示消息.", "標題",JOptionPane.QUESTION_MESSAGE);

JOptionPane.showMessageDialog(null, "無標識提示消息.", "標題",JOptionPane.PLAIN_MESSAGE);
相關文章
相關標籤/搜索