Класс BasicLookAndFeel
- Все реализованные интерфейсы:
Serializable
- Прямые известные подклассы:
-
MetalLookAndFeel,SynthLookAndFeel
public abstract class BasicLookAndFeel extends LookAndFeel implements Serializable
Каждый из ComponentUI, предоставляемых
BasicLookAndFeel, получает своё поведение из таблицы значений по умолчанию. За исключением случаев, когда есть указания, каждая из реализаций ComponentUI в этом пакете документирует набор значений по умолчанию, которые она использует. За исключением случаев, когда есть указания, значения по умолчанию устанавливаются в момент вызова installUI, и следуют рекомендациям, изложенным в LookAndFeel для установки значений по умолчанию.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими версиями Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими ту же версию Swing. Начиная с версии 1.4, поддержка долгосрочного хранения всех JavaBeans была добавлена в пакет java.beans. Пожалуйста, см. XMLEncoder.
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Конструктор для вызова подклассами. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
protected Action |
createAudioAction |
Создаёт и возвращает Action, используемый для воспроизведения звука. |
protected ActionMap |
getAudioActionMap() |
Возвращает ActionMap, содержащий аудиодействия для этого внешнего вида. |
UIDefaults |
getDefaults() |
Возвращает значения по умолчанию для внешнего вида. |
protected void |
initClassDefaults |
Заполняет table отображениями из uiClassID в полное имя класса ui. |
protected void |
initComponentDefaults |
Заполняет table значениями по умолчанию для базового внешнего вида. |
protected void |
initSystemColorDefaults |
Заполняет table системными цветами. |
protected void |
loadSystemColors |
Заполняет table парами name-color в systemColors. |
protected void |
playSound |
При необходимости вызывает actionPerformed на audioAction для воспроизведения звука. |
Методы, объявленные в классе javax.swing.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
Подробное описание конструкторов
BasicLookAndFeel
protected BasicLookAndFeel()
Подробное описание методов
getDefaults
public UIDefaults getDefaults()
UIDefaults заполняется путем вызова, в порядке следования, initClassDefaults, initSystemColorDefaults и initComponentDefaults. Хотя этот метод является общедоступным, его следует вызывать только UIManager, когда внешний вид установлен в качестве текущего внешнего вида и после вызова initialize.
- Overrides:
-
getDefaultsв классеLookAndFeel - Возвращает:
- значения по умолчанию для внешнего вида
- См. также:
initClassDefaults
protected void initClassDefaults(UIDefaults table)
table отображениями от uiClassID до полного квалифицированного имени класса ui. Значение для конкретного uiClassID равно
"javax.swing.plaf.basic.Basic + uiClassID". Например, значение для uiClassID TreeUI равно
"javax.swing.plaf.basic.BasicTreeUI".- Параметры:
-
table- экземплярUIDefaults, к которому добавляются записи - Исключения:
-
NullPointerException- еслиtableявляетсяnull - См. также:
initSystemColorDefaults
protected void initSystemColorDefaults(UIDefaults table)
table системными цветами. Это создаёт массив пар "имя-цвет" и вызывает
loadSystemColors. Имя - это String, соответствующее имени одного из статических SystemColor полей в классе
SystemColor. Для каждого такого SystemColor поля создаётся пара "имя-цвет".
color соответствует шестнадцатеричному String, как понимается Color.decode. Например, одна из пар "имя-цвет" -
"desktop"-"#005C5C". Это соответствует полю
SystemColor класса desktop со значением цвета new Color(0x005C5C).
Ниже показаны две пары "имя-цвет":
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 - См. также:
loadSystemColors
protected void loadSystemColors(UIDefaults table, String[] systemColors, boolean useNative)
table парами "имя-цвет" из systemColors. Подробности о формате systemColors см. в initSystemColorDefaults(UIDefaults). В table добавляется запись для каждой пары "имя-цвет" в systemColors. Ключом записи является name пары name-color.
Значение записи соответствует color пары "имя-цвет" name-color. Значение записи вычисляется одним из двух способов. В обоих случаях значение всегда является ColorUIResource.
Если useNative равно false, color создаётся с помощью преобразования
String в Color с помощью Color.decode. Если Color.decode не может преобразовать
String в Color (бросается
NumberFormatException), используется чёрный цвет.
Если useNative равно true, color - это значение поля в SystemColor с именем, совпадающим с name пары "имя-цвет" name-color. Если поле не найдено, используется чёрный цвет.
- Параметры:
-
table- объектUIDefaults, к которому добавляются значения -
systemColors- массив пар "имя-цвет", как описано вinitSystemColorDefaults(UIDefaults) -
useNative- определяет, получен ли цвет изSystemColorилиColor.decode - Исключения:
-
NullPointerException- еслиsystemColorsявляетсяnull; илиsystemColorsне пусто, аtableравноnull; или одно из имён пар "имя-цвет"name-colorявляетсяnull; илиuseNativeравноfalse, и одно из имён пар "имя-цвет"name-colorявляетсяnull -
ArrayIndexOutOfBoundsException- еслиuseNativeравноfalse, аsystemColors.lengthнечётно - См. также:
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 для каждого элемента. Результат помещается в 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
protected Action createAudioAction(Object key)
Action для воспроизведения звука. Если key является non-null, создаётся Action, используя значение из параметров по умолчанию с ключом key. Значение определяет ресурс звука для загрузки, когда actionPerformed вызывается на Action. Ресурс звука загружается в byte[] с помощью getClass().getResourceAsStream().
- Parameters:
-
key- ключ, определяющий действие со звуком - Returns:
Actionдля воспроизведения источника, илиnull, еслиkeyявляетсяnull- Since:
- 1.4
- See Also:
playSound
protected void playSound(Action audioAction)
actionPerformed на audioAction для воспроизведения звука. Метод actionPerformed вызывается, если значение параметра по умолчанию "AuditoryCues.playList" является
non-null Object[], содержащим запись с именем audioAction.- Parameters:
-
audioAction- действие, знающее, как воспроизвести звук, связанный с системой или пользовательским действием; значениеnullигнорируется - Throws:
-
ClassCastException- еслиaudioActionявляетсяnon-nullи значение параметра по умолчанию"AuditoryCues.playList"не являетсяObject[] - Since:
- 1.4
© 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/BasicLookAndFeel.html