Класс 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.

Вышеупомянутый макет используется, когда свойство 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 int MinimumHeight

Минимальная высота JOptionPane.

protected Dimension minimumSize

Размер JOptionPane.

static int MinimumWidth

Минимальная ширина JOptionPane.

protected JOptionPane optionPane

JOptionPane, для которого получатель предоставляет вид и ощущения.

protected PropertyChangeListener propertyChangeListener

Экземпляр PropertyChangeListener.

Конструкторы

Конструктор Описание
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)

Устанавливает получателя в качестве L&F для переданного 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)

Удаляет получателя из контроллера L&F переданного разделительного окна.

Методы, объявленные в классе 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, для которого получатель предоставляет вид и ощущения.

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()

Методы

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 переданной разделительной панели.

Переопределяет:
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()

Возвращает минимальный размер, который должна иметь панель параметров. Предоставляется в основном для подклассов, желающих предложить другой минимальный размер.

Возвращает:
минимальный размер панели параметров

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, для которого получатель предоставляет внешний вид и поведение.

Возвращает:
отображаемое сообщение

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 содержит созданные пользователем Components

© 1993, 2020, 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://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/swing/plaf/basic/BasicOptionPaneUI.html

Spec-Zone .ru
спецификации, руководства, описания, API