JavaTM 2 Platform
Standard Ed. 6

javax.swing
類別 JOptionPane

java.lang.Object
  繼承者 java.awt.Component
      繼承者 java.awt.Container
          繼承者 javax.swing.JComponent
              繼承者 javax.swing.JOptionPane
所有已實作的介面:
ImageObserver, MenuContainer, Serializable, Accessible

public class JOptionPane
extends JComponent
implements Accessible

JOptionPane 有助於方便地彈出要求使用者提供值或向其發出通知的標準對話框。有關使用 JOptionPane 的資訊,請參見 The Java Tutorial 中的 How to Make Dialogs 一節。

雖然由於方法數多使 JOptionPane 類別可能顯得複雜,但幾乎所有此類別的使用都是對下列靜態 showXxxDialog 方法之一的單行調用:

方法名 描述
showConfirmDialog 詢問一個確認問題,如 yes/no/cancel。
showInputDialog 提示要求某些輸入。
showMessageDialog 告知使用者某事已發生。
showOptionDialog 上述三項的大統一 (Grand Unification)。
所有這些方法還可能以 showInternalXXX 樣式出現,該樣式使用內部窗體來保存對話框(請參見 JInternalFrame)。此外還定義了多種便捷方法,這些方法重載那些基本方法,使用不同的參數列表。

所有對話框都是有網要的。在使用者交互完成之前,每個 showXxxDialog 方法都一直阻塞調用者。

圖標 訊息
輸入值
選項按鈕
這些對話框的基本外形通常與右圖類似,儘管各種外觀從根本上決定著最後結果。尤其是,外觀可以調整佈局以適應選項窗格的 ComponentOrientation 屬性。

參數:
這些方法的參數遵守一致的網要:

parentComponent
定義作為此對話框的父對話框的 Component。通過兩種方式使用此參數:包含它的 Frame 可以用作對話框的父 Frame,在對話框的位置使用其螢幕坐標。一般情況下,將對話框緊靠元件置於其之下。此參數可以為 null,在這種情況下,預設的 Frame 用作父級,並且對話框將居中位於螢幕上(取決於 L&F)。
message
要置於對話框中的描述訊息。在最常見的應用中,message 就是一個 StringString 常數。不過,此參數的型別實際上是 Object。其解釋依賴於其型別:
Object[]
物件陣列被解釋為在縱向堆疊(stack)空間中排列的一系列 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
預設選擇(輸入值)。

當選擇更改時,調用產生 PropertyChangeEventsetValue 方法。

如果已為所有輸入 setWantsInput 配置了 JOptionPane,則還可以偵聽綁定屬性 JOptionPane.INPUT_VALUE_PROPERTY,以確定何時使用者輸入或選擇了值。

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

範例:
顯示一個錯誤對話框,該對話框顯示的 message 為 'alert':
JOptionPane.showMessageDialog(null, "alert", "alert", JOptionPane.ERROR_MESSAGE);

顯示一個內部資訊對話框,其 message 為 'information':
JOptionPane.showInternalMessageDialog(frame, "information",
      "information", JOptionPane.INFORMATION_MESSAGE);

顯示一個資訊面板,其 options 為 "yes/no",message 為 'choose one':
JOptionPane.showConfirmDialog(null,
      "choose one", "choose one", JOptionPane.YES_NO_OPTION);

顯示一個內部資訊對話框,其 options 為 "yes/no/cancel",message 為 'please choose one',並具有 title 資訊:
JOptionPane.showInternalConfirmDialog(frame,
      "please choose one", "information",
      JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE);

顯示一個警告對話框,其 options 為 OK、CANCEL,title 為 'Warning',message 為 'Click OK to continue':
Object[] options = { "OK", "CANCEL" };
JOptionPane.showOptionDialog(null, "Click OK to continue", "Warning",
      JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE,
      null, options, options[0]);

顯示一個要求使用者鍵入 String 的對話框:
String inputValue = JOptionPane.showInputDialog("Please input a value");

顯示一個要求使用者選擇 String 的對話框:
Object[] possibleValues = { "First", "Second", "Third" };
Object selectedValue = JOptionPane.showInputDialog(null,
      "Choose one", "Input",
      JOptionPane.INFORMATION_MESSAGE, null,
      possibleValues, possibleValues[0]);

直接使用:
要直接創建和使用 JOptionPane,標準網要大致如下:
     JOptionPane pane = new JOptionPane(arguments);
     pane.set.Xxxx(...); // Configure
     JDialog dialog = pane.createDialog(parentComponent, title);
     dialog.show();
     Object selectedValue = pane.getValue();
     if(selectedValue == null)
       return CLOSED_OPTION;
     //If there is not an array of option buttons:
     if(options == null) {
       if(selectedValue instanceof Integer)
          return ((Integer)selectedValue).intValue();
       return CLOSED_OPTION;
     }
     //If there is an array of option buttons:
     for(int counter = 0, maxCounter = options.length;
        counter < maxCounter; counter++) {
        if(options[counter].equals(selectedValue))
        return counter;
     }
     return CLOSED_OPTION;
 

警告:Swing 不是執行緒安全的。有關更多資訊,請參閱 Swing's Threading Policy

警告:此類別的序列化物件與以後的 Swing 版本不相容。當前序列化支持適用於短期存儲,或適用於在運行相同 Swing 版本的應用程序之間進行 RMI(Remote Method Invocation,遠端方法調用)。從 1.4 版本開始,已在 java.beans 套件中添加了支持所有 JavaBeansTM 長期存儲的功能。請參見 XMLEncoder

另請參見:
JInternalFrame

巢狀類別摘要
protected  class JOptionPane.AccessibleJOptionPane
          此類別實作對 JOptionPane 類別的可存取性支持。
 
從類別 javax.swing.JComponent 繼承的巢狀類別/介面
JComponent.AccessibleJComponent
 
從類別 java.awt.Container 繼承的巢狀類別/介面
Container.AccessibleAWTContainer
 
從類別 java.awt.Component 繼承的巢狀類別/介面
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
欄位摘要
static int CANCEL_OPTION
          選擇 CANCEL 時從類別方法返回的值。
static int CLOSED_OPTION
          使用者沒有做出任何選擇而關閉了視窗時從類別方法返回的值,很可能將此值視為 CANCEL_OPTIONNO_OPTION
static int DEFAULT_OPTION
          意味著外觀不應該提供任何選項的型別,即僅使用取自 JOptionPane 的選項。
static int ERROR_MESSAGE
          用於錯誤訊息。
protected  Icon icon
          在窗格中使用的圖標。
static String ICON_PROPERTY
          icon 的綁定屬性名。
static int INFORMATION_MESSAGE
          用於資訊訊息。
static String INITIAL_SELECTION_VALUE_PROPERTY
          initialSelectionValue 的綁定屬性名。
static String INITIAL_VALUE_PROPERTY
          initialValue 的綁定屬性名。
protected  Object initialSelectionValue
          要在 selectionValues 中選擇的初始值。
protected  Object initialValue
          應該在 options 中最初選擇的值。
static String INPUT_VALUE_PROPERTY
          inputValue 的綁定屬性名。
protected  Object inputValue
          使用者已輸入的值。
protected  Object message
          要顯示的訊息。
static String MESSAGE_PROPERTY
          message 的綁定屬性名。
static String MESSAGE_TYPE_PROPERTY
          type 的綁定屬性名。
protected  int messageType
          訊息型別。
static int NO_OPTION
          選擇 NO 時從類別方法返回的值。
static int OK_CANCEL_OPTION
          用於 showConfirmDialog 的型別。
static int OK_OPTION
          選擇 OK 時從類別方法返回的值。
static String OPTION_TYPE_PROPERTY
          optionType 的綁定屬性名。
protected  Object[] options
          要向使用者顯示的選項。
static String OPTIONS_PROPERTY
          option 的綁定屬性名。
protected  int optionType
          選項型別,DEFAULT_OPTIONYES_NO_OPTIONYES_NO_CANCEL_OPTIONOK_CANCEL_OPTION 之一。
static int PLAIN_MESSAGE
          未使用圖標。
static int QUESTION_MESSAGE
          用於問題。
static String SELECTION_VALUES_PROPERTY
          selectionValues 的綁定屬性名。
protected  Object[] selectionValues
          使用者可以從中選擇值的陣列。
static Object UNINITIALIZED_VALUE
          指示使用者尚未選擇值。
protected  Object value
          當前選擇的值,該值將為有效選項或者 UNINITIALIZED_VALUEnull
static String VALUE_PROPERTY
          value 的綁定屬性名。
static String WANTS_INPUT_PROPERTY
          wantsInput 的綁定屬性名。
protected  boolean wantsInput
          如果為 true,則向使用者提供 UI 視窗小部件以獲取輸入。
static int WARNING_MESSAGE
          用於警告訊息。
static int YES_NO_CANCEL_OPTION
          用於 showConfirmDialog 的型別。
static int YES_NO_OPTION
          用於 showConfirmDialog 的型別。
static int YES_OPTION
          選擇 YES 時從類別方法返回的值。
 
從類別 javax.swing.JComponent 繼承的欄位
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
從類別 java.awt.Component 繼承的欄位
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
從介面 java.awt.image.ImageObserver 繼承的欄位
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
建構子摘要
JOptionPane()
          創建一個帶有測試訊息的 JOptionPane
JOptionPane(Object message)
          創建一個顯示訊息的 JOptionPane 的實例,使其使用 UI 提供的普通訊息訊息型別和預設選項。
JOptionPane(Object message, int messageType)
          創建一個顯示訊息的 JOptionPane 的實例,使其具有指定的訊息型別和預設選項。
JOptionPane(Object message, int messageType, int optionType)
          創建一個顯示訊息的 JOptionPane 的實例,使其具有指定的訊息型別和選項。
JOptionPane(Object message, int messageType, int optionType, Icon icon)
          創建一個顯示訊息的 JOptionPane 的實例,使其具有指定的訊息型別、選項和圖標。
JOptionPane(Object message, int messageType, int optionType, Icon icon, Object[] options)
          創建一個顯示訊息的 JOptionPane 的實例,使其具有指定的訊息型別、圖標和選項。
JOptionPane(Object message, int messageType, int optionType, Icon icon, Object[] options, Object initialValue)
          在指定最初選擇的選項的前提下,創建一個顯示訊息的 JOptionPane 的實例,使其具有指定的訊息型別、圖標和選項。
 
方法摘要
 JDialog createDialog(Component parentComponent, String title)
          創建並返回一個新 JDialog,它在 parentComponent 窗體中的 parentComponent 中央包裹 this
 JDialog createDialog(String title)
          創建並返回一個新的帶有指定標題的無父 JDialog
 JInternalFrame createInternalFrame(Component parentComponent, String title)
          創建並返回 JInternalFrame 的實例。
 AccessibleContext getAccessibleContext()
          返回與此 JOptionPane 相關聯的 AccessibleContext
static JDesktopPane getDesktopPaneForComponent(Component parentComponent)
          返回指定元件的桌面窗格。
static Frame getFrameForComponent(Component parentComponent)
          返回指定元件的 Frame
 Icon getIcon()
          返回此窗格顯示的圖標。
 Object getInitialSelectionValue()
          返回(根據最初選擇)向使用者顯示的輸入值。
 Object getInitialValue()
          返回初始值。
 Object getInputValue()
          如果 wantsInput 為 true,則返回使用者已輸入的值。
 int getMaxCharactersPerLineCount()
          返回要置於訊息的行中的最大字元數。
 Object getMessage()
          返回此窗格顯示的訊息物件。
 int getMessageType()
          返回訊息型別。
 Object[] getOptions()
          返回使用者可以作出的選擇。
 int getOptionType()
          返回顯示的選項型別。
static Frame getRootFrame()
          返回用於不提供窗體的類別方法中的 Frame
 Object[] getSelectionValues()
          返回輸入選擇值。
 OptionPaneUI getUI()
          返回實作此元件 L&F 的 UI 物件。
 String getUIClassID()
          返回實作此元件 L&F 的 UI 類別的名稱。
 Object getValue()
          返回使用者所選值。
 boolean getWantsInput()
          返回 wantsInput 屬性的值。
protected  String paramString()
          返回此 JOptionPane 的字元串表示形式。
 void selectInitialValue()
          請求選擇初始值,該請求將焦點設置為初始值。
 void setIcon(Icon newIcon)
          設置要顯示的圖標。
 void setInitialSelectionValue(Object newValue)
          設置(根據選擇)最初向使用者顯示的輸入值。
 void setInitialValue(Object newInitialValue)
          設置要啟用的初始值,即最初顯示窗格時處於焦點狀態的 Component
 void setInputValue(Object newValue)
          設置由使用者選擇或輸入的輸入值。
 void setMessage(Object newMessage)
          設置選項窗格的訊息物件。
 void setMessageType(int newType)
          設置選項窗格的訊息型別。
 void setOptions(Object[] newOptions)
          設置此窗格顯示的選項。
 void setOptionType(int newType)
          設置要顯示的選項。
static void setRootFrame(Frame newRootFrame)
          設置窗體,以用於不提供窗體的類別方法。
 void setSelectionValues(Object[] newValues)
          設置窗格的輸入選擇值,該窗格向使用者提供可以從中進行選擇的項列表。
 void setUI(OptionPaneUI ui)
          設置實作此元件 L&F 的 UI 物件。
 void setValue(Object newValue)
          設置使用者所選值。
 void setWantsInput(boolean newValue)
          設置 wantsInput 屬性。
static int showConfirmDialog(Component parentComponent, Object message)
          調出帶有選項 YesNoCancel 的對話框;標題為 Select an Option
static int showConfirmDialog(Component parentComponent, Object message, String title, int optionType)
          調出一個由 optionType 參數確定其中選項數的對話框。
static int showConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType)
          調用一個由 optionType 參數確定其中選項數的對話框,messageType 參數確定要顯示的圖標。
static int showConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon)
          調出一個帶有指定圖標的對話框,其中的選項數由 optionType 參數確定。
static String showInputDialog(Component parentComponent, Object message)
          顯示請求使用者輸入內容的問題訊息對話框,它以 parentComponent 為父級。
static String showInputDialog(Component parentComponent, Object message, Object initialSelectionValue)
          顯示請求使用者輸入內容的問題訊息對話框,它以 parentComponent 為父級。
static String showInputDialog(Component parentComponent, Object message, String title, int messageType)
          顯示請求使用者輸入內容的對話框,它以 parentComponent 為父級,該對話框的標題為 title,訊息型別為 messageType
static Object showInputDialog(Component parentComponent, Object message, String title, int messageType, Icon icon, Object[] selectionValues, Object initialSelectionValue)
          提示使用者在可以指定初始選擇、可能選擇及其他所有選項的模組化的對話框中輸入內容。
static String showInputDialog(Object message)
          顯示請求使用者輸入的問題訊息對話框。
static String showInputDialog(Object message, Object initialSelectionValue)
          顯示請求使用者輸入的問題訊息對話框,它帶有已初始化為 initialSelectionValue 的輸入值。
static int showInternalConfirmDialog(Component parentComponent, Object message)
          調出帶有選項 YesNoCancel 的內部對話框面板;標題為 Select an Option
static int showInternalConfirmDialog(Component parentComponent, Object message, String title, int optionType)
          調出一個由 optionType 參數確定其中選項數的內部對話框面板。
static int showInternalConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType)
          調出一個由 optionType 參數確定其中選項數的內部對話框面板,messageType 參數確定要顯示的圖標。
static int showInternalConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon)
          調出一個帶有指定圖標的內部對話框面板,其中的選項數由 optionType 參數確定。
static String showInternalInputDialog(Component parentComponent, Object message)
          顯示請求使用者輸入內容的內部問題訊息對話框,它以 parentComponent 為父級。
static String showInternalInputDialog(Component parentComponent, Object message, String title, int messageType)
          顯示請求使用者輸入內容的內部對話框,它以 parentComponent 為父級。
static Object showInternalInputDialog(Component parentComponent, Object message, String title, int messageType, Icon icon, Object[] selectionValues, Object initialSelectionValue)
          提示使用者在可以指定初始選擇、可能選擇及其他所有選項的模組化的內部對話框中輸入內容。
static void showInternalMessageDialog(Component parentComponent, Object message)
          調出內部確認對話框面板。
static void showInternalMessageDialog(Component parentComponent, Object message, String title, int messageType)
          調出一個顯示訊息的內部對話框面板,它使用由 messageType 參數確定的預設圖標。
static void showInternalMessageDialog(Component parentComponent, Object message, String title, int messageType, Icon icon)
          調出一個顯示訊息的內部對話框面板,為其指定了所有參數。
static int showInternalOptionDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon, Object[] options, Object initialValue)
          調出一個帶有指定圖標的內部對話框面板,其中的初始選擇由 initialValue 參數確定,選項數由 optionType 參數確定。
static void showMessageDialog(Component parentComponent, Object message)
          調出標題為 "Message" 的資訊訊息對話框。
static void showMessageDialog(Component parentComponent, Object message, String title, int messageType)
          調出對話框,它顯示使用由 messageType 參數確定的預設圖標的 message。
static void showMessageDialog(Component parentComponent, Object message, String title, int messageType, Icon icon)
          調出一個顯示資訊的對話框,為其指定了所有參數。
static int showOptionDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon, Object[] options, Object initialValue)
          調出一個帶有指定圖標的對話框,其中的初始選擇由 initialValue 參數確定,選項數由 optionType 參數確定。
 void updateUI()
          UIManager 發出的關於 L&F 已改變的通知。
 
從類別 javax.swing.JComponent 繼承的方法
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
從類別 java.awt.Container 繼承的方法
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
從類別 java.awt.Component 繼承的方法
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

欄位詳細資訊

UNINITIALIZED_VALUE

public static final Object UNINITIALIZED_VALUE
指示使用者尚未選擇值。


DEFAULT_OPTION

public static final int DEFAULT_OPTION
意味著外觀不應該提供任何選項的型別,即僅使用取自 JOptionPane 的選項。

另請參見:
常數欄位值

YES_NO_OPTION

public static final int YES_NO_OPTION
用於 showConfirmDialog 的型別。

另請參見:
常數欄位值

YES_NO_CANCEL_OPTION

public static final int YES_NO_CANCEL_OPTION
用於 showConfirmDialog 的型別。

另請參見:
常數欄位值

OK_CANCEL_OPTION

public static final int OK_CANCEL_OPTION
用於 showConfirmDialog 的型別。

另請參見:
常數欄位值

YES_OPTION

public static final int YES_OPTION
選擇 YES 時從類別方法返回的值。

另請參見:
常數欄位值

NO_OPTION

public static final int NO_OPTION
選擇 NO 時從類別方法返回的值。

另請參見:
常數欄位值

CANCEL_OPTION

public static final int CANCEL_OPTION
選擇 CANCEL 時從類別方法返回的值。

另請參見:
常數欄位值

OK_OPTION

public static final int OK_OPTION
選擇 OK 時從類別方法返回的值。

另請參見:
常數欄位值

CLOSED_OPTION

public static final int CLOSED_OPTION
使用者沒有做出任何選擇而關閉了視窗時從類別方法返回的值,很可能將此值視為 CANCEL_OPTIONNO_OPTION

另請參見:
常數欄位值

ERROR_MESSAGE

public static final int ERROR_MESSAGE
用於錯誤訊息。

另請參見:
常數欄位值

INFORMATION_MESSAGE

public static final int INFORMATION_MESSAGE
用於資訊訊息。

另請參見:
常數欄位值

WARNING_MESSAGE

public static final int WARNING_MESSAGE
用於警告訊息。

另請參見:
常數欄位值

QUESTION_MESSAGE

public static final int QUESTION_MESSAGE
用於問題。

另請參見:
常數欄位值

PLAIN_MESSAGE

public static final int PLAIN_MESSAGE
未使用圖標。

另請參見:
常數欄位值

ICON_PROPERTY

public static final String ICON_PROPERTY
icon 的綁定屬性名。

另請參見:
常數欄位值

MESSAGE_PROPERTY

public static final String MESSAGE_PROPERTY
message 的綁定屬性名。

另請參見:
常數欄位值

VALUE_PROPERTY

public static final String VALUE_PROPERTY
value 的綁定屬性名。

另請參見:
常數欄位值

OPTIONS_PROPERTY

public static final String OPTIONS_PROPERTY
option 的綁定屬性名。

另請參見:
常數欄位值

INITIAL_VALUE_PROPERTY

public static final String INITIAL_VALUE_PROPERTY
initialValue 的綁定屬性名。

另請參見:
常數欄位值

MESSAGE_TYPE_PROPERTY

public static final String MESSAGE_TYPE_PROPERTY
type 的綁定屬性名。

另請參見:
常數欄位值

OPTION_TYPE_PROPERTY

public static final String OPTION_TYPE_PROPERTY
optionType 的綁定屬性名。

另請參見:
常數欄位值

SELECTION_VALUES_PROPERTY

public static final String SELECTION_VALUES_PROPERTY
selectionValues 的綁定屬性名。

另請參見:
常數欄位值

INITIAL_SELECTION_VALUE_PROPERTY

public static final String INITIAL_SELECTION_VALUE_PROPERTY
initialSelectionValue 的綁定屬性名。

另請參見:
常數欄位值

INPUT_VALUE_PROPERTY

public static final String INPUT_VALUE_PROPERTY
inputValue 的綁定屬性名。

另請參見:
常數欄位值

WANTS_INPUT_PROPERTY

public static final String WANTS_INPUT_PROPERTY
wantsInput 的綁定屬性名。

另請參見:
常數欄位值

icon

protected transient Icon icon
在窗格中使用的圖標。


message

protected transient Object message
要顯示的訊息。


options

protected transient Object[] options
要向使用者顯示的選項。


initialValue

protected transient Object initialValue
應該在 options 中最初選擇的值。


messageType

protected int messageType
訊息型別。


optionType

protected int optionType
選項型別,DEFAULT_OPTIONYES_NO_OPTIONYES_NO_CANCEL_OPTIONOK_CANCEL_OPTION 之一。


value

protected transient Object value
當前選擇的值,該值將為有效選項或者 UNINITIALIZED_VALUEnull


selectionValues

protected transient Object[] selectionValues
使用者可以從中選擇值的陣列。外觀將提供從中做出選擇的 UI 元件。


inputValue

protected transient Object inputValue
使用者已輸入的值。


initialSelectionValue

protected transient Object initialSelectionValue
要在 selectionValues 中選擇的初始值。


wantsInput

protected boolean wantsInput
如果為 true,則向使用者提供 UI 視窗小部件以獲取輸入。

建構子詳細資訊

JOptionPane

public JOptionPane()
創建一個帶有測試訊息的 JOptionPane


JOptionPane

public JOptionPane(Object message)
創建一個顯示訊息的 JOptionPane 的實例,使其使用 UI 提供的普通訊息訊息型別和預設選項。

參數:
message - 要顯示的 Object

JOptionPane

public JOptionPane(Object message,
                   int messageType)
創建一個顯示訊息的 JOptionPane 的實例,使其具有指定的訊息型別和預設選項。

參數:
message - 要顯示的 Object
messageType - 要顯示的訊息型別:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE

JOptionPane

public JOptionPane(Object message,
                   int messageType,
                   int optionType)
創建一個顯示訊息的 JOptionPane 的實例,使其具有指定的訊息型別和選項。

參數:
message - 要顯示的 Object
messageType - 要顯示的訊息型別:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
optionType - 要在窗格中顯示的選項:DEFAULT_OPTIONYES_NO_OPTIONYES_NO_CANCEL_OPTIONOK_CANCEL_OPTION

JOptionPane

public JOptionPane(Object message,
                   int messageType,
                   int optionType,
                   Icon icon)
創建一個顯示訊息的 JOptionPane 的實例,使其具有指定的訊息型別、選項和圖標。

參數:
message - 要顯示的 Object
messageType - 要顯示的訊息型別:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
optionType - 要在窗格中顯示的選項:DEFAULT_OPTIONYES_NO_OPTIONYES_NO_CANCEL_OPTIONOK_CANCEL_OPTION
icon - 要顯示的 Icon 圖像

JOptionPane

public JOptionPane(Object message,
                   int messageType,
                   int optionType,
                   Icon icon,
                   Object[] options)
創建一個顯示訊息的 JOptionPane 的實例,使其具有指定的訊息型別、圖標和選項。最初沒有選擇任何選項。

options 物件應該套件含 Component(直接添加的)或 String(包裹在 JButton 中)的實例。如果提供 Component,則必須確保單擊 Component 時,它向創建的 JOptionPane 傳遞訊息 setValue

參數:
message - 要顯示的 Object
messageType - 要顯示的訊息型別:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
optionType - 要在窗格中顯示的選項:DEFAULT_OPTIONYES_NO_OPTIONYES_NO_CANCEL_OPTIONOK_CANCEL_OPTION
icon - 要顯示的 Icon 圖像
options - 使用者可以選擇的選項

JOptionPane

public JOptionPane(Object message,
                   int messageType,
                   int optionType,
                   Icon icon,
                   Object[] options,
                   Object initialValue)
在指定最初選擇的選項的前提下,創建一個顯示訊息的 JOptionPane 的實例,使其具有指定的訊息型別、圖標和選項。

參數:
message - 要顯示的 Object
messageType - 要顯示的訊息型別:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
optionType - 要在窗格中顯示的選項:DEFAULT_OPTIONYES_NO_OPTIONYES_NO_CANCEL_OPTIONOK_CANCEL_OPTION
icon - 要顯示的圖標圖像
options - 使用者可以選擇的選項
initialValue - 最初選擇的選項;如果為 null,則不做最初選擇;只有在使用 options 時才有意義
方法詳細資訊

showInputDialog

public static String showInputDialog(Object message)
                              throws HeadlessException
顯示請求使用者輸入的問題訊息對話框。該對話框使用預設的邊框,通常意味著在螢幕上居中顯示。

參數:
message - 要顯示的 Object
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

showInputDialog

public static String showInputDialog(Object message,
                                     Object initialSelectionValue)
顯示請求使用者輸入的問題訊息對話框,它帶有已初始化為 initialSelectionValue 的輸入值。該對話框使用預設的窗體,通常意味著在螢幕上居中顯示。

參數:
message - 要顯示的 Object
initialSelectionValue - 用於初始化輸入欄位的值
從以下版本開始:
1.4

showInputDialog

public static String showInputDialog(Component parentComponent,
                                     Object message)
                              throws HeadlessException
顯示請求使用者輸入內容的問題訊息對話框,它以 parentComponent 為父級。該對話框顯示於 Component 的窗體的上部,通常位於 Component 之下。

參數:
parentComponent - 對話框的父 Component
message - 要顯示的 Object
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

showInputDialog

public static String showInputDialog(Component parentComponent,
                                     Object message,
                                     Object initialSelectionValue)
顯示請求使用者輸入內容的問題訊息對話框,它以 parentComponent 為父級。輸入值將被初始化為 initialSelectionValue。該對話框顯示於 Component 的窗體的上部,通常位於 Component 之下。

參數:
parentComponent - 對話框的父 Component
message - 要顯示的 Object
initialSelectionValue - 用於初始化輸入欄位的值
從以下版本開始:
1.4

showInputDialog

public static String showInputDialog(Component parentComponent,
                                     Object message,
                                     String title,
                                     int messageType)
                              throws HeadlessException
顯示請求使用者輸入內容的對話框,它以 parentComponent 為父級,該對話框的標題為 title,訊息型別為 messageType

參數:
parentComponent - 對話框的父 Component
message - 要顯示的 Object
title - 要在對話框的標題欄中顯示的 String
messageType - 要顯示的訊息型別:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

showInputDialog

public static Object showInputDialog(Component parentComponent,
                                     Object message,
                                     String title,
                                     int messageType,
                                     Icon icon,
                                     Object[] selectionValues,
                                     Object initialSelectionValue)
                              throws HeadlessException
提示使用者在可以指定初始選擇、可能選擇及其他所有選項的模組化的對話框中輸入內容。使用者可以從 selectionValues 中進行選擇,其中 null 表示使用者可以輸入想輸入的任何內容,通常依靠 JTextField 來實作。initialSelectionValue 是用於提示使用者的初始值。由 UI 決定如何最好的表示 selectionValues,但通常情況下將使用 JComboBoxJListJTextField

參數:
parentComponent - 對話框的父 Component
message - 要顯示的 Object
title - 要在對話框的標題欄中顯示的 String
messageType - 要顯示的訊息型別:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
icon - 要顯示的 Icon 圖像
selectionValues - 給出可能選擇的 Object 陣列
initialSelectionValue - 用於初始化輸入欄位的值
返回:
使用者輸入;返回 null 意味著使用者取消了輸入
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

showMessageDialog

public static void showMessageDialog(Component parentComponent,
                                     Object message)
                              throws HeadlessException
調出標題為 "Message" 的資訊訊息對話框。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要顯示的 Object
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

showMessageDialog

public static void showMessageDialog(Component parentComponent,
                                     Object message,
                                     String title,
                                     int messageType)
                              throws HeadlessException
調出對話框,它顯示使用由 messageType 參數確定的預設圖標的 message。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要顯示的 Object
title - 對話框的標題字元串
messageType - 要顯示的訊息型別:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

showMessageDialog

public static void showMessageDialog(Component parentComponent,
                                     Object message,
                                     String title,
                                     int messageType,
                                     Icon icon)
                              throws HeadlessException
調出一個顯示資訊的對話框,為其指定了所有參數。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要顯示的 Object
title - 對話框的標題字元串
messageType - 要顯示的訊息型別:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
icon - 要在對話框中顯示的圖標,該圖標可以說明使用者識別要顯示的訊息種類別
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

showConfirmDialog

public static int showConfirmDialog(Component parentComponent,
                                    Object message)
                             throws HeadlessException
調出帶有選項 YesNoCancel 的對話框;標題為 Select an Option

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要顯示的 Object
返回:
指示使用者所選選項的整數
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

showConfirmDialog

public static int showConfirmDialog(Component parentComponent,
                                    Object message,
                                    String title,
                                    int optionType)
                             throws HeadlessException
調出一個由 optionType 參數確定其中選項數的對話框。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要顯示的 Object
title - 對話框的標題字元串
optionType - 指定可用於對話框的選項的 int:YES_NO_OPTIONYES_NO_CANCEL_OPTIONOK_CANCEL_OPTION
返回:
指示使用者所選選項的 int
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

showConfirmDialog

public static int showConfirmDialog(Component parentComponent,
                                    Object message,
                                    String title,
                                    int optionType,
                                    int messageType)
                             throws HeadlessException
調用一個由 optionType 參數確定其中選項數的對話框,messageType 參數確定要顯示的圖標。messageType 參數主要用於提供來自外觀的預設圖標。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要顯示的 Object
title - 對話框的標題字元串
optionType - 指定可用於對話框的選項的整數:YES_NO_OPTIONYES_NO_CANCEL_OPTIONOK_CANCEL_OPTION
messageType - 指定此訊息種類別的整數;主要用於確定來自可插入外觀的圖標:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
返回:
指示使用者所選選項的整數
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

showConfirmDialog

public static int showConfirmDialog(Component parentComponent,
                                    Object message,
                                    String title,
                                    int optionType,
                                    int messageType,
                                    Icon icon)
                             throws HeadlessException
調出一個帶有指定圖標的對話框,其中的選項數由 optionType 參數確定。messageType 參數主要用於提供來自外觀的預設圖標。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要顯示的 Object
title - 對話框的標題字元串
optionType - 指定可用於對話框的選項的 int:YES_NO_OPTIONYES_NO_CANCEL_OPTIONOK_CANCEL_OPTION
messageType - 指定此訊息種類別的 int,主要用於確定來自可插入外觀的圖標:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
icon - 要在對話框中顯示的圖標
返回:
指示使用者所選選項的 int
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

showOptionDialog

public static int showOptionDialog(Component parentComponent,
                                   Object message,
                                   String title,
                                   int optionType,
                                   int messageType,
                                   Icon icon,
                                   Object[] options,
                                   Object initialValue)
                            throws HeadlessException
調出一個帶有指定圖標的對話框,其中的初始選擇由 initialValue 參數確定,選項數由 optionType 參數確定。

如果 optionTypeYES_NO_OPTION 或者 YES_NO_CANCEL_OPTION,並且 options 參數為 null,則由外觀提供選項。

messageType 參數主要用於提供來自外觀的預設圖標。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要顯示的 Object
title - 對話框的標題字元串
optionType - 指定可用於對話框的選項的整數:DEFAULT_OPTIONYES_NO_OPTIONYES_NO_CANCEL_OPTIONOK_CANCEL_OPTION
messageType - 指定訊息種類別的整數,主要用於確定來自可插入外觀的圖標:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
icon - 在對話框中顯示的圖標
options - 指示使用者可能選擇的物件組成的陣列;如果物件是元件,則可以正確呈現;非 String 物件使用其 toString 方法呈現;如果此參數為 null,則由外觀確定選項
initialValue - 表示對話框的預設選擇的物件;只有在使用 options 時才有意義;可以為 null
返回:
指示使用者所選選項的整數;如果使用者關閉了對話框,則返回 CLOSED_OPTION
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

createDialog

public JDialog createDialog(Component parentComponent,
                            String title)
                     throws HeadlessException
創建並返回一個新 JDialog,它在 parentComponent 窗體中的 parentComponent 中央包裹 thistitle 是返回對話框的標題。使用者不能調整返回的 JDialog,但是程序可以通過調用 JDialog 實例上的 setResizable 來更改此屬性。返回的 JDialog 將被設置為:一旦將其關閉或者使用者單擊其中一個按鈕,就會相應地設置選項窗格的值屬性並關閉對話框。每次對話框變得可見時,它會將選項窗格的值屬性重置為 JOptionPane.UNINITIALIZED_VALUE,從而確保使用者的後續操作能夠正確地關閉對話框。

參數:
parentComponent - 確定在其中顯示對話框的窗體;如果 parentComponent 不具有 Frame,則使用預設的 Frame
title - 對話框的標題字元串
返回:
包含此實例的新 JDialog
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

createDialog

public JDialog createDialog(String title)
                     throws HeadlessException
創建並返回一個新的帶有指定標題的無父 JDialog。使用者不能調整返回的 JDialog,但是程序可以通過調用 JDialog 實例上的 setResizable 來更改此屬性。返回的 JDialog 將被設置為:一旦將其關閉或者使用者單擊其中一個按鈕,就會相應地設置選項窗格的值屬性並關閉對話框。每次對話框變得可見時,它會將選項窗格的值屬性重置為 JOptionPane.UNINITIALIZED_VALUE,從而確保使用者的後續動作能夠正確地關閉對話框。

參數:
title - 對話框的標題字元串
返回:
包含此實例的新 JDialog
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
從以下版本開始:
1.6
另請參見:
GraphicsEnvironment.isHeadless()

showInternalMessageDialog

public static void showInternalMessageDialog(Component parentComponent,
                                             Object message)
調出內部確認對話框面板。該對話框是一個資訊訊息對話框,標題為 "Message"。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要顯示的物件

showInternalMessageDialog

public static void showInternalMessageDialog(Component parentComponent,
                                             Object message,
                                             String title,
                                             int messageType)
調出一個顯示訊息的內部對話框面板,它使用由 messageType 參數確定的預設圖標。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要顯示的 Object
title - 對話框的標題字元串
messageType - 要顯示的訊息型別:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE

showInternalMessageDialog

public static void showInternalMessageDialog(Component parentComponent,
                                             Object message,
                                             String title,
                                             int messageType,
                                             Icon icon)
調出一個顯示訊息的內部對話框面板,為其指定了所有參數。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要顯示的 Object
title - 對話框的標題字元串
messageType - 要顯示的訊息型別:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
icon - 要在對話框中顯示的圖標,該圖標可以說明使用者識別要顯示的訊息種類別

showInternalConfirmDialog

public static int showInternalConfirmDialog(Component parentComponent,
                                            Object message)
調出帶有選項 YesNoCancel 的內部對話框面板;標題為 Select an Option

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要顯示的 Object
返回:
指示使用者所選選項的整數

showInternalConfirmDialog

public static int showInternalConfirmDialog(Component parentComponent,
                                            Object message,
                                            String title,
                                            int optionType)
調出一個由 optionType 參數確定其中選項數的內部對話框面板。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要在對話框中顯示的物件;Component 物件呈現為 ComponentString 物件呈現為字元串;其他物件將通過 toString 方法被轉換為 String
title - 對話框的標題字元串
optionType - 指定可用於對話框的選項的整數:YES_NO_OPTIONYES_NO_CANCEL_OPTION
返回:
指示使用者所選選項的整數

showInternalConfirmDialog

public static int showInternalConfirmDialog(Component parentComponent,
                                            Object message,
                                            String title,
                                            int optionType,
                                            int messageType)
調出一個由 optionType 參數確定其中選項數的內部對話框面板,messageType 參數確定要顯示的圖標。messageType 參數主要用於提供來自外觀的預設圖標。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要在對話框中顯示的物件;Component 物件呈現為 ComponentString 物件呈現為字元串;其他物件將通過 toString 方法被轉換為 String
title - 對話框的標題字元串
optionType - 指定可用於對話框的選項的整數:YES_NO_OPTIONYES_NO_CANCEL_OPTION
messageType - 指定訊息種類別的整數,主要用於確定來自可插入外觀的圖標:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
返回:
指示使用者所選選項的整數

showInternalConfirmDialog

public static int showInternalConfirmDialog(Component parentComponent,
                                            Object message,
                                            String title,
                                            int optionType,
                                            int messageType,
                                            Icon icon)
調出一個帶有指定圖標的內部對話框面板,其中的選項數由 optionType 參數確定。messageType 參數主要用於提供來自外觀的預設圖標。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要在對話框中顯示的物件;Component 物件呈現為 ComponentString 物件呈現為字元串;其他物件將通過 toString 方法被轉換為 String
title - 對話框的標題字元串
optionType - 指定可用於對話框的選項的整數:YES_NO_OPTIONYES_NO_CANCEL_OPTION
messageType - 指定訊息種類別的整數,主要用於確定來自可插入外觀的圖標:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
icon - 要在對話框中顯示的圖標
返回:
指示使用者所選選項的整數

showInternalOptionDialog

public static int showInternalOptionDialog(Component parentComponent,
                                           Object message,
                                           String title,
                                           int optionType,
                                           int messageType,
                                           Icon icon,
                                           Object[] options,
                                           Object initialValue)
調出一個帶有指定圖標的內部對話框面板,其中的初始選擇由 initialValue 參數確定,選項數由 optionType 參數確定。

如果 optionTypeYES_NO_OPTION,或者 YES_NO_CANCEL_OPTIONoptions 參數為 null,則由外觀提供選項。

messageType 參數主要用於提供來自外觀的預設圖標。

參數:
parentComponent - 確定在其中顯示對話框的 Frame;如果為 null 或者 parentComponent 不具有 Frame,則使用預設的 Frame
message - 要在對話框中顯示的物件;Component 物件呈現為 ComponentString 物件呈現為字元串。其他物件通過 toString 方法被轉換為 String
title - 對話框的標題字元串
optionType - 指定可用於對話框的選項的整數:YES_NO_OPTIONYES_NO_CANCEL_OPTION
messageType - 指定訊息種類別的整數;主要用於確定來自可插入外觀的圖標:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
icon - 在對話框中顯示的圖標
options - 指示使用者可能選擇的物件組成的陣列;如果物件是元件,則可以正確呈現;非 String 物件使用其 toString 方法呈現;如果此參數為 null,則由外觀確定選項
initialValue - 表示對話框的預設選擇的物件;只有在使用 options 時才有意義;可以為 null
返回:
指示使用者所選選項的整數;如果使用者關閉了對話框,則返回 CLOSED_OPTION

showInternalInputDialog

public static String showInternalInputDialog(Component parentComponent,
                                             Object message)
顯示請求使用者輸入內容的內部問題訊息對話框,它以 parentComponent 為父級。該對話框顯示於 Component 的窗體中,通常位於 Component 之下。

參數:
parentComponent - 對話框的父 Component
message - 要顯示的 Object

showInternalInputDialog

public static String showInternalInputDialog(Component parentComponent,
                                             Object message,
                                             String title,
                                             int messageType)
顯示請求使用者輸入內容的內部對話框,它以 parentComponent 為父級。該對話框的標題為 title,訊息型別為 messageType

參數:
parentComponent - 對話框的父 Component
message - 要顯示的 Object
title - 要在對話框的標題欄中顯示的 String
messageType - 要顯示的訊息型別:ERROR_MESSAGE、INFORMATION_MESSAGE、WARNING_MESSAGE、QUESTION_MESSAGE 或 PLAIN_MESSAGE

showInternalInputDialog

public static Object showInternalInputDialog(Component parentComponent,
                                             Object message,
                                             String title,
                                             int messageType,
                                             Icon icon,
                                             Object[] selectionValues,
                                             Object initialSelectionValue)
提示使用者在可以指定初始選擇、可能選擇及其他所有選項的模組化的內部對話框中輸入內容。使用者可以從 selectionValues 中進行選擇,其中 null 表示使用者可以輸入想輸入的任何內容,通常依靠 JTextField 來實作。initialSelectionValue 是用於提示使用者的初始值。由 UI 決定如何最好的表示 selectionValues,但通常情況下將使用 JComboBoxJListJTextField

參數:
parentComponent - 對話框的父 Component
message - 要顯示的 Object
title - 要在對話框的標題欄中顯示的 String
messageType - 要顯示的訊息型別:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
icon - 要顯示的 Icon 圖像
selectionValues - 給出可能選擇的 Object 陣列
initialSelectionValue - 用於初始化輸入欄位的值
返回:
使用者輸入;返回 null 意味著使用者取消了輸入

createInternalFrame

public JInternalFrame createInternalFrame(Component parentComponent,
                                          String title)
創建並返回 JInternalFrame 的實例。內部窗體是利用指定標題創建的,同時包裹了 JOptionPane。返回的 JInternalFrame 將被添加到 parentComponentJDesktopPane 祖先中;如果其祖先之一不是 JDesktopPane,則添加到其父元件中;如果 parentComponent 不具有父級,則拋出 RuntimeException

參數:
parentComponent - 內部窗體的父 Component
title - 要在窗體的標題欄中顯示的 String
返回:
包含 JOptionPaneJInternalFrame
拋出:
RuntimeException - 如果 parentComponent 不具有有效的父級

getFrameForComponent

public static Frame getFrameForComponent(Component parentComponent)
                                  throws HeadlessException
返回指定元件的 Frame

參數:
parentComponent - 要檢查 FrameComponent
返回:
包含元件的 Frame;如果元件為 null 或者不具有有效的 Frame 父級,則返回 getRootFrame
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
getRootFrame(), GraphicsEnvironment.isHeadless()

getDesktopPaneForComponent

public static JDesktopPane getDesktopPaneForComponent(Component parentComponent)
返回指定元件的桌面窗格。

參數:
parentComponent - 要檢查桌面的 Component
返回:
包含元件的 JDesktopPane;如果元件為 null 或者不具有作為 JInternalFrame 的祖先,則返回 null

setRootFrame

public static void setRootFrame(Frame newRootFrame)
設置窗體,以用於不提供窗體的類別方法。

註: 建議提供有效的父級而不是使用此方法。

參數:
newRootFrame - 要使用的預設 Frame

getRootFrame

public static Frame getRootFrame()
                          throws HeadlessException
返回用於不提供窗體的類別方法中的 Frame

返回:
要使用的預設 Frame
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless 返回 true
另請參見:
setRootFrame(java.awt.Frame), GraphicsEnvironment.isHeadless()

setUI

public void setUI(OptionPaneUI ui)
設置實作此元件 L&F 的 UI 物件。

參數:
ui - OptionPaneUI L&F 物件
另請參見:
UIDefaults.getUI(javax.swing.JComponent)

getUI

public OptionPaneUI getUI()
返回實作此元件 L&F 的 UI 物件。

返回:
OptionPaneUI 物件

updateUI

public void updateUI()
UIManager 發出的關於 L&F 已改變的通知。根據 UIManager 的最新通知替換當前的 UI 物件。

覆寫:
類別 JComponent 中的 updateUI
另請參見:
JComponent.updateUI()

getUIClassID

public String getUIClassID()
返回實作此元件 L&F 的 UI 類別的名稱。

覆寫:
類別 JComponent 中的 getUIClassID
返回:
字元串 "OptionPaneUI"
另請參見:
JComponent.getUIClassID(), UIDefaults.getUI(javax.swing.JComponent)

setMessage

public void setMessage(Object newMessage)
設置選項窗格的訊息物件。

參數:
newMessage - 要顯示的 Object
另請參見:
getMessage()

getMessage

public Object getMessage()
返回此窗格顯示的訊息物件。

返回:
顯示的 Object
另請參見:
setMessage(java.lang.Object)

setIcon

public void setIcon(Icon newIcon)
設置要顯示的圖標。如果非 null,則外觀不提供圖標。

參數:
newIcon - 要顯示的 Icon
另請參見:
getIcon()

getIcon

public Icon getIcon()
返回此窗格顯示的圖標。

返回:
顯示的 Icon
另請參見:
setIcon(javax.swing.Icon)

setValue

public void setValue(Object newValue)
設置使用者所選值。

參數:
newValue - 所選值
另請參見:
getValue()

getValue

public Object getValue()
返回使用者所選值。UNINITIALIZED_VALUE 表示使用者尚未作出選擇,而 null 則表示使用者沒有選取任何項便關閉了視窗。否則,返回值將為在此物件中所定義的選項之一。

返回:
使用者所選 Object;如果使用者尚未作出選擇,則返回 UNINITIALIZED_VALUE;如果使用者沒有作出選擇而關閉了視窗,則返回 null
另請參見:
setValue(java.lang.Object)

setOptions

public void setOptions(Object[] newOptions)
設置此窗格顯示的選項。如果 newOptions 中的元素為 Component,則直接將其添加到窗格;否則為元素創建一個按鈕。

參數:
newOptions - 用於創建使用者可單擊按鈕的 Object 陣列,或者要添加到窗格的任意 Component
另請參見:
getOptions()

getOptions

public Object[] getOptions()
返回使用者可以作出的選擇。

返回:
給出使用者選擇的 Object 陣列
另請參見:
setOptions(java.lang.Object[])

setInitialValue

public void setInitialValue(Object newInitialValue)
設置要啟用的初始值,即最初顯示窗格時處於焦點狀態的 Component

參數:
newInitialValue - 獲得初始鍵盤焦點的 Object
另請參見:
getInitialValue()

getInitialValue

public Object getInitialValue()
返回初始值。

返回:
獲得初始鍵盤焦點的 Object
另請參見:
setInitialValue(java.lang.Object)

setMessageType

public void setMessageType(int newType)
設置選項窗格的訊息型別。訊息型別供外觀確定要顯示的圖標(如果未提供)及 parentComponent 的可能佈局時使用。

參數:
newType - 指定要顯示的訊息種類別的整數:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGEPLAIN_MESSAGE
拋出:
RuntimeException - 如果 newType 不是上面列出的合法值之一
另請參見:
getMessageType()

getMessageType

public int getMessageType()
返回訊息型別。

返回:
指定訊息型別的整數
另請參見:
setMessageType(int)

setOptionType

public void setOptionType(int newType)
設置要顯示的選項。選項型別供外觀確定要顯示的按鈕時使用(除非已提供選項)。

參數:
newType - 指定 L&F 要顯示的選項的整數:DEFAULT_OPTIONYES_NO_OPTIONYES_NO_CANCEL_OPTIONOK_CANCEL_OPTION
拋出:
RuntimeException - 如果 newType 不是上面列出的合法值之一
另請參見:
getOptionType(), setOptions(java.lang.Object[])

getOptionType

public int getOptionType()
返回顯示的選項型別。

返回:
指定使用者可選擇選項的整數
另請參見:
setOptionType(int)

setSelectionValues

public void setSelectionValues(Object[] newValues)
設置窗格的輸入選擇值,該窗格向使用者提供可以從中進行選擇的項列表。(UI 提供視窗小部件,以便使用者從中選取其中一個值。)null 值表示使用者可以輸入想輸入的任何值,通常依靠 JTextField 來實作。

wantsInput 設置為 true。使用 setInitialSelectionValue 指定最初選擇的值。啟用了窗格後,inputValue 將被設置為使用者所選的值。

參數:
newValues - 使用者要顯示的 Object 陣列(通常使用列表或組合框的形式),使用者可以從中作出選擇
另請參見:
setWantsInput(boolean), setInitialSelectionValue(java.lang.Object), getSelectionValues()

getSelectionValues

public Object[] getSelectionValues()
返回輸入選擇值。

返回:
使用者可以選擇的 Object 陣列
另請參見:
setSelectionValues(java.lang.Object[])

setInitialSelectionValue

public void setInitialSelectionValue(Object newValue)
設置(根據選擇)最初向使用者顯示的輸入值。僅當 wantsInput 為 true 時使用。

參數:
newValue - 最初選擇的值
另請參見:
setSelectionValues(java.lang.Object[]), getInitialSelectionValue()

getInitialSelectionValue

public Object getInitialSelectionValue()
返回(根據最初選擇)向使用者顯示的輸入值。

返回:
最初選擇值
另請參見:
setInitialSelectionValue(java.lang.Object), setSelectionValues(java.lang.Object[])

setInputValue

public void setInputValue(Object newValue)
設置由使用者選擇或輸入的輸入值。僅當 wantsInput 為 true 時才使用。注意,此方法由選項窗格內部調用(回應使用者操作),客戶端程序一般不能調用。要設置(根據選擇)最初向使用者顯示的輸入值,請使用 setInitialSelectionValue

參數:
newValue - 用於設置使用者指定值的 Object(通常使用文本欄位的形式)
另請參見:
setSelectionValues(java.lang.Object[]), setInitialSelectionValue(java.lang.Object), setWantsInput(boolean), getInputValue()

getInputValue

public Object getInputValue()
如果 wantsInput 為 true,則返回使用者已輸入的值。

返回:
使用者指定的 Object,如果它是這些物件之一;如果為鍵入欄位中的值,則返回 String
另請參見:
setSelectionValues(java.lang.Object[]), setWantsInput(boolean), setInputValue(java.lang.Object)

getMaxCharactersPerLineCount

public int getMaxCharactersPerLineCount()
返回要置於訊息的行中的最大字元數。預設情況下返回 Integer.MAX_VALUE。在子類別中覆寫此方法可更改該值。

返回:
給出行中最大字元數的整數

setWantsInput

public void setWantsInput(boolean newValue)
設置 wantsInput 屬性。如果 newValue 為 true,則提供其父級為 parentComponent 的輸入元件(比如文本欄位或組合框),以允許使用者輸入值。如果 getSelectionValues 返回非 null 陣列,則輸入值為該陣列中的物件之一。否則,輸入值就是使用者輸入的內容。

這是一個綁定屬性。

另請參見:
setSelectionValues(java.lang.Object[]), setInputValue(java.lang.Object)

getWantsInput

public boolean getWantsInput()
返回 wantsInput 屬性的值。

返回:
如果將提供輸入元件,則返回 true
另請參見:
setWantsInput(boolean)

selectInitialValue

public void selectInitialValue()
請求選擇初始值,該請求將焦點設置為初始值。應該在包含選項窗格的視窗變得可見後調用此方法。


paramString

protected String paramString()
返回此 JOptionPane 的字元串表示形式。此方法僅在進行除錯的時候使用,對於各個實作,所返回字元串的內容和格式可能有所不同。返回的字元串可能為空,但不可能為 null

覆寫:
類別 JComponent 中的 paramString
返回:
JOptionPane 的字元串表示形式

getAccessibleContext

public AccessibleContext getAccessibleContext()
返回與此 JOptionPane 相關聯的 AccessibleContext。對於選項窗格,AccessibleContext 採用 AccessibleJOptionPane 的形式。必要時創建一個新的 AccessibleJOptionPane 實例。

指定者:
介面 Accessible 中的 getAccessibleContext
覆寫:
類別 JComponent 中的 getAccessibleContext
返回:
一個 AccessibleJOptionPane,它充當此 AccessibleJOptionPane 的 AccessibleContext

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only