Spec-Zone.ru › OpenJDK 27

Класс BasicLookAndFeel

java.lang.Object
javax.swing.LookAndFeel
javax.swing.plaf.basic.BasicLookAndFeel
Все реализуемые интерфейсы:
Serializable
Прямые известные подклассы:
MetalLookAndFeel, SynthLookAndFeel
public abstract class BasicLookAndFeel extends LookAndFeel implements Serializable
Базовый класс, используемый при создании внешнего вида и поведения для Swing.

Каждая из ComponentUI, предоставляемых BasicLookAndFeel, наследует свое поведение из таблицы значений по умолчанию. Если не указано иное, в документации каждой реализации ComponentUI этого пакета описан набор используемых ею значений по умолчанию. Если не указано иное, значения по умолчанию устанавливаются при вызове installUI и соответствуют рекомендациям по установке значений по умолчанию, изложенным в LookAndFeel.

Предупреждение: Сериализованные объекты этого класса будут несовместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для кратковременного хранения или RMI между приложениями, работающими с одной и той же версией Swing. Начиная с версии 1.4, поддержка длительного хранения всех JavaBeans добавлена в пакет java.beans. См. XMLEncoder.

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

BasicLookAndFeel()
Модификатор Конструктор Описание
protected
Конструктор, предназначенный для вызова подклассами.

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

Модификатор и тип Метод Описание
protected Action createAudioAction(Object key)
Создает и возвращает Action, используемый для воспроизведения звука.
protected ActionMap getAudioActionMap()
Возвращает ActionMap, содержащую звуковые действия для этого внешнего вида и поведения.
UIDefaults getDefaults()
Возвращает значения по умолчанию для внешнего вида и поведения.
protected void initClassDefaults(UIDefaults table)
Заполняет table сопоставлениями uiClassID с полными именами классов пользовательского интерфейса.
protected void initComponentDefaults(UIDefaults table)
Заполняет table значениями по умолчанию для базового внешнего вида и поведения.
protected void initSystemColorDefaults(UIDefaults table)
Заполняет table системными цветами.
protected void loadSystemColors(UIDefaults table, String[] systemColors, boolean useNative)
Заполняет table парами name-color из systemColors.
protected void playSound(Action audioAction)
При необходимости вызывает actionPerformed для audioAction, чтобы воспроизвести звук.

Методы, объявленные в классе LookAndFeel

getDescription, getDesktopPropertyValue, getDisabledIcon, getDisabledSelectedIcon, getID, getLayoutStyle, getName, getSupportsWindowDecorations, initialize, installBorder, installColors, installColorsAndFont, installProperty, isNativeLookAndFeel, isSupportedLookAndFeel, loadKeyBindings, makeComponentInputMap, makeIcon, makeInputMap, makeKeyBindings, provideErrorFeedback, toString, uninitialize, uninstallBorder
Модификатор и тип Метод Описание
abstract String getDescription()
Возвращает однострочное описание этой реализации внешнего вида и поведения, например.
static Object getDesktopPropertyValue(String systemPropertyName, Object fallbackValue)
Возвращает значение указанного системного свойства рабочего стола, вызывая Toolkit.getDefaultToolkit().getDesktopProperty().
Icon getDisabledIcon(JComponent component, Icon icon)
Возвращает Icon с отключенным внешним видом.
Icon getDisabledSelectedIcon(JComponent component, Icon icon)
Возвращает Icon для использования отключенными компонентами, которые также выбраны.
abstract String getID()
Возвращает строку, идентифицирующую этот внешний вид и поведение.
LayoutStyle getLayoutStyle()
Возвращает LayoutStyle для этого внешнего вида и поведения.
abstract String getName()
Возвращает короткую строку, идентифицирующую этот внешний вид и поведение, например.
boolean getSupportsWindowDecorations()
Возвращает true, если экземпляры RootPaneUI, возвращаемые LookAndFeel, поддерживают предоставление Window оформления в JRootPane.
void initialize()
Инициализирует внешний вид и поведение.
static void installBorder(JComponent c, String defaultBorderName)
Вспомогательный метод для установки свойства границы компонента с помощью значения из набора значений по умолчанию.
static void installColors(JComponent c, String defaultBgName, String defaultFgName)
Вспомогательный метод для установки свойств цвета переднего плана и фона компонента с помощью значений из набора значений по умолчанию.
static void installColorsAndFont(JComponent c, String defaultBgName, String defaultFgName, String defaultFontName)
Вспомогательный метод для установки свойств цвета переднего плана, фона и шрифта компонента с помощью значений из набора значений по умолчанию.
static void installProperty(JComponent c, String propertyName, Object propertyValue)
Вспомогательный метод для установки свойства с указанными именем и значением для компонента, если это свойство еще не задано разработчиком.
abstract boolean isNativeLookAndFeel()
Если базовая платформа имеет «собственный» внешний вид и поведение и этот класс является его реализацией, возвращает true.
abstract boolean isSupportedLookAndFeel()
Возвращает true, если базовая платформа поддерживает и/или допускает использование этого внешнего вида и поведения.
static void loadKeyBindings(InputMap retMap, Object[] keys)
Заполняет InputMap указанными привязками.
static ComponentInputMap makeComponentInputMap(JComponent c, Object[] keys)
Создает ComponentInputMapUIResource из keys.
static Object makeIcon(Class<?> baseClass, String gifFile)
Создает и возвращает UIDefault.LazyValue, загружающий изображение.
static InputMap makeInputMap(Object[] keys)
Создает InputMapUIResource из keys.
static JTextComponent.KeyBinding[] makeKeyBindings(Object[] keyBindingList)
Вспомогательный метод для создания массива KeyBindings.
void provideErrorFeedback(Component component)
Вызывается, когда пользователь пытается выполнить недопустимую операцию, например вставить текст в нередактируемый JTextField, находящийся в фокусе.
String toString()
Возвращает строку, отображающую и описывающую свойства этого объекта.
void uninitialize()
Отменяет инициализацию внешнего вида и поведения.
static void uninstallBorder(JComponent c)
Вспомогательный метод для удаления границы.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создает и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли какой-либо другой объект этому объекту.
protected void finalize()
Устарело и подлежит удалению: этот элемент API может быть удален в будущей версии.
Финализация устарела и подлежит удалению в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
final void wait()
Заставляет текущий поток ожидать до пробуждения, обычно посредством вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать до пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать до пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка времени.

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

BasicLookAndFeel

protected BasicLookAndFeel()
Конструктор, предназначенный для вызова подклассами.

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

getDefaults

public UIDefaults getDefaults()
Возвращает значения по умолчанию для внешнего вида и поведения. Возвращаемый объект UIDefaults заполняется последовательным вызовом initClassDefaults, initSystemColorDefaults и initComponentDefaults.

Хотя этот метод является общедоступным, его должен вызывать только UIManager, когда внешний вид и поведение заданы как текущие и после вызова initialize.

Переопределяет:
getDefaults в классе LookAndFeel
Возвращает:
значения по умолчанию для внешнего вида и поведения
См. также:
  • initClassDefaults(UIDefaults)
  • initSystemColorDefaults(UIDefaults)
  • initComponentDefaults(UIDefaults)

initClassDefaults

protected void initClassDefaults(UIDefaults table)
Заполняет table сопоставлениями uiClassID с полными именами классов пользовательского интерфейса. Значение для конкретного uiClassID — это "javax.swing.plaf.basic.Basic + uiClassID". Например, значением для uiClassID TreeUI является "javax.swing.plaf.basic.BasicTreeUI".
Параметры:
table — экземпляр UIDefaults, в который добавляются записи
Вызывает исключение:
NullPointerException — если table имеет значение null
См. также:
  • LookAndFeel
  • getDefaults()

initSystemColorDefaults

protected void initSystemColorDefaults(UIDefaults table)
Заполняет table системными цветами. Для этого создается массив пар name-color и вызывается loadSystemColors.

Имя представляет собой String, соответствующую имени одного из статических полей SystemColor класса SystemColor. Для каждого такого поля SystemColor создается пара «имя — цвет».

color соответствует шестнадцатеричному String в формате, используемом Color.decode. Например, одна из пар name-color — "desktop"-"#005C5C". Она соответствует полю SystemColor desktop со значением цвета new Color(0x005C5C).

Ниже показаны две пары name-color:

  String[] nameColorPairs = new String[] {
         "desktop", "#005C5C",
   "activeCaption", "#000080" };
  loadSystemColors(table, nameColorPairs, isNativeLookAndFeel());
Как уже отмечалось, этот метод вызывает loadSystemColors, передавая ему указанные table и массив пар name-color. Последний аргумент loadSystemColors указывает, следует ли использовать значение поля в SystemColor. Этот метод передает значение isNativeLookAndFeel() в качестве последнего аргумента loadSystemColors.
Параметры:
table — объект UIDefaults, в который добавляются значения
Вызывает исключение:
NullPointerException — если table имеет значение null
См. также:
  • SystemColor
  • getDefaults()
  • loadSystemColors(UIDefaults, String[], boolean)

loadSystemColors

protected void loadSystemColors(UIDefaults table, String[] systemColors, boolean useNative)
Заполняет table парами name-color из systemColors. Подробные сведения о формате systemColors см. в разделе initSystemColorDefaults(UIDefaults).

Для каждой пары name-color в systemColors в table добавляется запись. Ключ записи — это name пары name-color.

Значение записи соответствует color пары name-color. Значение записи вычисляется одним из двух способов. При любом из этих способов результат всегда является ColorUIResource.

Если useNative имеет значение false, color создается с помощью Color.decode, преобразующего String в Color. Если decode не может преобразовать String в Color (выбрасывается NumberFormatException), используется ColorUIResource черного цвета.

Если useNative имеет значение true, color — это значение поля в SystemColor, имя которого совпадает с name пары name-color. Если поле недопустимо, используется ColorUIResource черного цвета.

Параметры:
table — объект UIDefaults, в который добавляются значения
systemColors — массив пар name-color, описанных в разделе initSystemColorDefaults(UIDefaults)
useNative — указывает, следует ли получать цвет из SystemColor или Color.decode
Вызывает исключение:
NullPointerException — если systemColors имеет значение null; или systemColors не пусто, а table имеет значение null; или одно из имен пар name-color имеет значение null; или useNative имеет значение false, а одно из colors пар name-color имеет значение null
ArrayIndexOutOfBoundsException — если useNative имеет значение false, а systemColors.length является нечетным
См. также:
  • initSystemColorDefaults(javax.swing.UIDefaults)
  • SystemColor
  • Color.decode(String)

initComponentDefaults

protected void initComponentDefaults(UIDefaults table)
Заполняет table значениями по умолчанию для базового внешнего вида и поведения.
Параметры:
table — UIDefaults, в который добавляются значения
Вызывает исключение:
NullPointerException — если table имеет значение null

getAudioActionMap

protected ActionMap getAudioActionMap()
Возвращает ActionMap, содержащую звуковые действия для этого внешнего вида и поведения.

Возвращаемая ActionMap содержит Actions, реализующие возможность воспроизведения звукового сигнала. Эти звуковые сигналы соответствуют действиям пользователя и системы, о которых может быть полезно знать конечному пользователю (например, появление диалогового окна).

В нужный момент ComponentUI отвечает за получение Action из ActionMap и передачу его в playSound.

Сначала этот метод ищет ActionMap в значениях по умолчанию по ключу "AuditoryCues.actionMap".

Если значение равно non-null, оно возвращается. Если значение по умолчанию "AuditoryCues.actionMap" равно null, а значение по умолчанию "AuditoryCues.cueList" равно non-null, создается и заполняется ActionMapUIResource. Заполнение выполняется перебором всех элементов массива "AuditoryCues.cueList" и вызовом createAudioAction() для создания Action для каждого элемента. Полученный Action помещается в ActionMapUIResource, где элемент массива используется в качестве ключа. Например, если массив "AuditoryCues.cueList" содержит один элемент — "audioKey", создается ActionMapUIResource, а затем заполняется с помощью actionMap.put(cueList[0], createAudioAction(cueList[0])).

Если значение по умолчанию "AuditoryCues.actionMap" равно null, а значение по умолчанию "AuditoryCues.cueList" равно null, создается пустой ActionMapUIResource.

Возвращает:
ActionMap, содержащую Actions, отвечающие за воспроизведение звуковых сигналов
Вызывает исключение:
ClassCastException — если значение по умолчанию "AuditoryCues.actionMap" не является ActionMap или значение по умолчанию "AuditoryCues.cueList" не является Object[]
Начиная с версии:
1.4
См. также:
  • createAudioAction(Object)
  • playSound(Action)

createAudioAction

protected Action createAudioAction(Object key)
Создает и возвращает Action, используемый для воспроизведения звука.

Если key равно non-null, создается Action с использованием значения из набора значений по умолчанию с ключом key. Это значение указывает звуковой ресурс, который нужно загрузить при вызове actionPerformed для Action. Звуковой ресурс загружается в byte[] с помощью getClass().getResourceAsStream().

Параметры:
key — ключ, идентифицирующий звуковое действие
Возвращает:
Action, используемый для воспроизведения источника, или null, если key имеет значение null
Начиная с версии:
1.4
См. также:
  • playSound(Action)

playSound

protected void playSound(Action audioAction)
При необходимости вызывает actionPerformed для audioAction, чтобы воспроизвести звук. Метод actionPerformed вызывается, если значение по умолчанию "AuditoryCues.playList" — это non-null Object[], содержащий запись String, равную имени audioAction.
Параметры:
audioAction — Action, знающий, как воспроизвести звук, связанный с происходящим действием системы или пользователя; значение null игнорируется
Вызывает исключение:
ClassCastException — если audioAction имеет значение non-null, а значение по умолчанию "AuditoryCues.playList" не является Object[]
Начиная с версии:
1.4

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

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