Spec-Zone.ru › OpenJDK 24

Класс BasicOptionPaneUI

java.lang.Object
javax.swing.plaf.ComponentUI
javax.swing.plaf.OptionPaneUI
javax.swing.plaf.basic.BasicOptionPaneUI
Прямые известные подклассы:
SynthOptionPaneUI
public class BasicOptionPaneUI extends OptionPaneUI
Обеспечивает базовый вид и ощущение для JOptionPane. BasicMessagePaneUI предоставляет способ размещения значка, сообщения и кнопок в Container. Как правило, макет будет выглядеть следующим образом:
        ------------------
        | i | message    |
        | c | message    |
        | o | message    |
        | n | message    |
        ------------------
        |     buttons    |
        |________________|
 
значок — это экземпляр Icon, который обернут в JLabel. Сообщение — это непрозрачный объект, и проверяется следующее: если сообщение является Component, оно добавляется в Container, если это Icon, оно обертывается в JLabel и добавляется в Container, в противном случае оно обертывается в JLabel.

Вышеупомянутый макет используется, когда свойство option pane'а ComponentOrientation горизонтальное, слева направо. Макет будет соответствующим образом изменён для других ориентаций.

Container, сообщение, значок и кнопки определяются методами-абстракциями.

Краткое описание вложенных классов

Модификатор и тип Класс Описание
class  BasicOptionPaneUI.ButtonActionListener
Этот класс следует рассматривать как "защищённый" вложенный класс.
static class  BasicOptionPaneUI.ButtonAreaLayout
ButtonAreaLayout ведет себя аналогично FlowLayout.
class  BasicOptionPaneUI.PropertyChangeHandler
Этот класс следует рассматривать как "защищённый" вложенный класс.

Краткое описание полей

Модификатор и тип Поле Описание
protected boolean hasCustomComponents
Устанавливается в значение true в validateComponent, если компонент содержится в сообщении или кнопках.
protected Component initialFocusComponent
Компонент, который получает фокус при обращении с selectInitialValue.
protected JComponent inputComponent
JComponent для ввода, если optionPane.getWantsInput() возвращает true.
static final int MinimumHeight
Минимальная высота JOptionPane.
protected Dimension minimumSize
Размер JOptionPane.
static final int MinimumWidth
Минимальная ширина JOptionPane.
protected JOptionPane optionPane
JOptionPane, для которого получатель предоставляет вид и ощущение.
protected PropertyChangeListener propertyChangeListener
Экземпляр PropertyChangeListener.

Краткое описание конструкторов

Конструктор Описание
BasicOptionPaneUI()
Создаёт BasicOptionPaneUI.

Краткое описание методов

Модификатор и тип Метод Описание
protected void addButtonComponents(Container container, Object[] buttons, int initialIndex)
Создаёт соответствующий объект для представления каждого объекта в buttons и добавляет его в container.
protected void addIcon(Container top)
Создаёт и добавляет JLabel, представляющий значок, возвращённый getIcon, в top.
protected void addMessageComponents(Container container, GridBagConstraints cons, Object msg, int maxll, boolean internallyCreated)
Создаёт соответствующий объект для представления msg и размещает его в container.
protected void burstStringInto(Container c, String d, int maxll)
Рекурсивно создаёт новые экземпляры JLabel для представления d.
boolean containsCustomComponents(JOptionPane op)
Возвращает true, если в последнем вызове validateComponent сообщение или кнопки содержали подкласс Component.
protected ActionListener createButtonActionListener(int buttonIndex)
Создаёт новый экземпляр ButtonActionListener.
protected Container createButtonArea()
Создаёт и возвращает Container, содержащий кнопки.
protected LayoutManager createLayoutManager()
Возвращает менеджер макета.
protected Container createMessageArea()
Получает сообщение от installComponents для создания Container, содержащего тело сообщения.
protected PropertyChangeListener createPropertyChangeListener()
Возвращает экземпляр PropertyChangeListener.
protected Container createSeparator()
Возвращает разделитель.
static ComponentUI createUI(JComponent x)
Создаёт новый экземпляр BasicOptionPaneUI.
protected Object[] getButtons()
Возвращает кнопки для отображения из JOptionPane, для которого получатель предоставляет вид и ощущение.
protected Icon getIcon()
Возвращает значок из JOptionPane, для которого получатель предоставляет вид и ощущение, или значок по умолчанию, возвращаемый из getDefaultIcon.
protected Icon getIconForType(int messageType)
Возвращает значок для использования для переданного типа.
protected int getInitialValueIndex()
Возвращает начальный индекс в кнопках для выбора.
protected int getMaxCharactersPerLineCount()
Возвращает максимальное количество символов, размещаемых на строке.
protected Object getMessage()
Возвращает сообщение для отображения из JOptionPane, для которого получатель предоставляет вид и ощущение.
Dimension getMinimumOptionPaneSize()
Возвращает минимальный размер диалогового окна.
Dimension getPreferredSize(JComponent c)
Если c — это JOptionPane, в котором содержится получатель, предпочтительный размер, который возвращается, — это максимум из предпочтительного размера LayoutManager для JOptionPane и getMinimumOptionPaneSize.
protected boolean getSizeButtonsToSameWidth()
Возвращает true, базовый вид и ощущение хочет, чтобы все кнопки имели одинаковую ширину.
protected void installComponents()
Регистрирует компоненты.
protected void installDefaults()
Устанавливает свойства по умолчанию.
protected void installKeyboardActions()
Регистрирует действия с клавиатурой.
protected void installListeners()
Регистрирует слушателей.
void installUI(JComponent c)
Устанавливает получателя как вид и ощущение для переданного JOptionPane.
protected void resetInputValue()
Устанавливает значение ввода в диалоговом окне, для которого получатель предоставляет вид и ощущение, на основе значения в inputComponent.
void selectInitialValue(JOptionPane op)
Если inputComponent не равен null, фокус запрашивается на нём, иначе запрашивается на значение по умолчанию
protected void uninstallComponents()
Удаляет компоненты.
protected void uninstallDefaults()
Удаляет свойства по умолчанию.
protected void uninstallKeyboardActions()
Удаляет действия с клавиатурой.
protected void uninstallListeners()
Удаляет слушателей.
void uninstallUI(JComponent c)
Удаляет получателя из контроллера вид и ощущение переданного split pane.

Методы, объявленные в классе javax.swing.plaf.ComponentUI

contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize, paint, update

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание полей

MinimumWidth

public static final int MinimumWidth
Минимальная ширина JOptionPane.
См. также:
  • Значения константных полей

MinimumHeight

public static final int MinimumHeight
Минимальная высота JOptionPane.
См. также:
  • Значения константных полей

optionPane

protected JOptionPane optionPane
JOptionPane, за который отвечает получатель (look and feel).

minimumSize

protected Dimension minimumSize
Размер JOptionPane.

inputComponent

protected JComponent inputComponent
JComponent для ввода, если optionPane.getWantsInput() возвращает true.

initialFocusComponent

protected Component initialFocusComponent
Компонент, который получит фокус при вызове selectInitialValue.

hasCustomComponents

protected boolean hasCustomComponents
Устанавливается в true в validateComponent, если компонент содержится в сообщении или кнопках.

propertyChangeListener

protected PropertyChangeListener propertyChangeListener
Экземпляр PropertyChangeListener.

Подробное описание конструкторов

BasicOptionPaneUI

public BasicOptionPaneUI()
Создает BasicOptionPaneUI.

Подробное описание методов

createUI

public static ComponentUI createUI(JComponent x)
Создает новый экземпляр BasicOptionPaneUI.
Параметры:
x - компонент
Возвращает:
новый экземпляр BasicOptionPaneUI

installUI

public void installUI(JComponent c)
Устанавливает получателя в качестве L&F для переданного JOptionPane.
Переопределяет:
installUI в классе ComponentUI
Параметры:
c - компонент, в который устанавливается делегат UI
См. также:
  • ComponentUI.uninstallUI(javax.swing.JComponent)
  • JComponent.setUI(javax.swing.plaf.ComponentUI)
  • JComponent.updateUI()

uninstallUI

public void uninstallUI(JComponent c)
Удаляет получателя из контроллера L&F переданного split pane.
Переопределяет:
uninstallUI в классе ComponentUI
Параметры:
c - компонент, из которого удаляется делегат UI; этот аргумент часто игнорируется, но может использоваться, если объект UI является бессостоятельным и используется несколькими компонентами
См. также:
  • ComponentUI.installUI(javax.swing.JComponent)
  • JComponent.updateUI()

installDefaults

protected void installDefaults()
Устанавливает значения по умолчанию.

uninstallDefaults

protected void uninstallDefaults()
Удаляет значения по умолчанию.

installComponents

protected void installComponents()
Регистрирует компоненты.

uninstallComponents

protected void uninstallComponents()
Удаляет регистрацию компонентов.

createLayoutManager

protected LayoutManager createLayoutManager()
Возвращает менеджер компоновки.
Возвращает:
менеджер компоновки

installListeners

protected void installListeners()
Регистрирует слушателей.

uninstallListeners

protected void uninstallListeners()
Удаляет регистрацию слушателей.

createPropertyChangeListener

protected PropertyChangeListener createPropertyChangeListener()
Возвращает экземпляр PropertyChangeListener.
Возвращает:
экземпляр PropertyChangeListener

installKeyboardActions

protected void installKeyboardActions()
Регистрирует действия клавиатуры.

uninstallKeyboardActions

protected void uninstallKeyboardActions()
Удаляет регистрацию действий клавиатуры.

getMinimumOptionPaneSize

public Dimension getMinimumOptionPaneSize()
Возвращает минимальный размер option pane. Предоставляется для подклассов, желающих предложить другой минимальный размер.
Возвращает:
минимальный размер option pane

getPreferredSize

public Dimension getPreferredSize(JComponent c)
Если c является JOptionPane, в котором содержится получатель, возвращаемый предпочтительный размер — максимальный из предпочтительного размера LayoutManager для JOptionPane и getMinimumOptionPaneSize.
Переопределяет:
getPreferredSize в классе ComponentUI
Параметры:
c - компонент, предпочтительный размер которого запрашивается; этот аргумент часто игнорируется, но может использоваться, если объект UI является бессостоятельным и используется несколькими компонентами
Возвращает:
объект Dimension, содержащий предпочтительный размер заданного компонента, подходящий для выбранного стиля
См. также:
  • JComponent.getPreferredSize()
  • LayoutManager.preferredLayoutSize(java.awt.Container)

createMessageArea

protected Container createMessageArea()
Вызывается из installComponents для создания Container, содержащего тело сообщения. Иконка создается с помощью вызова addIcon.
Возвращает:
экземпляр Container

addMessageComponents

protected void addMessageComponents(Container container, GridBagConstraints cons, Object msg, int maxll, boolean internallyCreated)
Создает соответствующий объект для представления msg и помещает его в container. Если msg является экземпляром Component, он добавляется непосредственно; если это Icon, создается JLabel для его представления; в противном случае создается JLabel для строки. Если msg является массивом Object[], этот метод вызывается рекурсивно для дочерних элементов. internallyCreated является true, если msg является экземпляром Component и был создан этим методом (это используется для правильного установки hasCustomComponents только если internallyCreated является false).
Параметры:
container - контейнер
cons - экземпляр GridBagConstraints
msg - сообщение
maxll - максимальная длина
internallyCreated - true, если компонент был создан внутренне

getMessage

protected Object getMessage()
Возвращает сообщение для отображения из JOptionPane, за который отвечает получатель (look and feel).
Возвращает:
сообщение для отображения

addIcon

protected void addIcon(Container top)
Создает и добавляет JLabel, представляющий иконку, возвращаемую из getIcon, в top. Вызывается из createMessageArea.
Параметры:
top - контейнер

getIcon

protected Icon getIcon()
Возвращает значок из JOptionPane, для которого приемник предоставляет вид и ощущения, или значок по умолчанию, возвращаемый getDefaultIcon.
Возвращает:
значок

getIconForType

protected Icon getIconForType(int messageType)
Возвращает значок для указанного типа.
Параметры:
messageType - тип сообщения
Возвращает:
значок для указанного типа

getMaxCharactersPerLineCount

protected int getMaxCharactersPerLineCount()
Возвращает максимальное количество символов на строке.
Возвращает:
максимальное количество символов на строке

burstStringInto

protected void burstStringInto(Container c, String d, int maxll)
Рекурсивно создает новые экземпляры JLabel для представления d. Каждый экземпляр JLabel добавляется в c.
Параметры:
c - контейнер
d - текст
maxll - максимальная длина текста

createSeparator

protected Container createSeparator()
Возвращает разделитель.
Возвращает:
разделитель

createButtonArea

protected Container createButtonArea()
Создает и возвращает Container, содержащий кнопки. Кнопки создаются путем вызова getButtons.
Возвращает:
Container, содержащий кнопки

addButtonComponents

protected void addButtonComponents(Container container, Object[] buttons, int initialIndex)
Создает соответствующий объект для представления каждого из объектов в buttons и добавляет его в container. Это отличается от addMessageComponents тем, что оно будет рекурсивно вызываться для buttons, и если кнопка не является компонентом, то создаст экземпляр JButton.
Параметры:
container - контейнер
buttons - массив кнопок
initialIndex - начальный индекс

createButtonActionListener

protected ActionListener createButtonActionListener(int buttonIndex)
Конструирует новый экземпляр ButtonActionListener.
Параметры:
buttonIndex - индекс кнопки
Возвращает:
новый экземпляр ButtonActionListener

getButtons

protected Object[] getButtons()
Возвращает кнопки для отображения из JOptionPane, для которого приемник предоставляет вид и ощущения. Если у JOptionPane установлены параметры, они будут предоставлены, в противном случае, если optionType равен YES_NO_OPTION, возвращается yesNoOptions, если тип равен YES_NO_CANCEL_OPTION, возвращается yesNoCancelOptions, в противном случае возвращаются defaultButtons.
Возвращает:
кнопки для отображения из JOptionPane

getSizeButtonsToSameWidth

protected boolean getSizeButtonsToSameWidth()
Возвращает true, базовая L&F хочет, чтобы все кнопки имели одинаковую ширину.
Возвращает:
true, если все кнопки должны иметь одинаковую ширину

getInitialValueIndex

protected int getInitialValueIndex()
Возвращает начальный индекс для выбора кнопок. Индекс вычисляется из начального значения из JOptionPane и параметров JOptionPane или равен 0.
Возвращает:
начальный индекс для выбора кнопок

resetInputValue

protected void resetInputValue()
Устанавливает значение ввода в окне опций, для которого приемник предоставляет вид и ощущения, на основе значения в inputComponent.

selectInitialValue

public void selectInitialValue(JOptionPane op)
Если inputComponent не null, фокус запрашивается на нем, в противном случае фокус запрашивается на значение по умолчанию
Определено в:
selectInitialValue в классе OptionPaneUI
Параметры:
op - JOptionPane

containsCustomComponents

public boolean containsCustomComponents(JOptionPane op)
Возвращает true, если в последнем вызове validateComponent сообщение или кнопки содержали подкласс Component.
Определено в:
containsCustomComponents в классе OptionPaneUI
Параметры:
op - JOptionPane
Возвращает:
true, если заданный JOptionPane содержит созданные пользователем Component

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/swing/plaf/basic/BasicOptionPaneUI.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API