Класс Platform
public final class Platform extends Object
- С:
- JavaFX 2.0
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
static interface |
Platform.Preferences |
Содержит настройки текущей платформы. |
Краткое описание свойств
| Тип | Свойство | Описание |
|---|---|---|
static ReadOnlyBooleanProperty |
accessibilityActive |
Указывает, включена ли поддержка доступности. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static ReadOnlyBooleanProperty |
accessibilityActiveProperty() |
Указывает, включена ли поддержка доступности. |
static boolean |
canStartNestedEventLoop() |
Указывает, можно ли запустить вложенный цикл обработки событий из текущей нити в текущем состоянии. |
static Object |
enterNestedEventLoop |
Входит во вложенный цикл обработки событий и блокируется до вызова соответствующего exitNestedEventLoop. |
static void |
exit() |
Завершает приложение JavaFX. |
static void |
exitNestedEventLoop |
Выходит из вложенного цикла обработки событий и разблокирует вызывающий метод соответствующего enterNestedEventLoop. |
static Platform.Preferences |
getPreferences() |
Получает настройки текущей платформы. |
static boolean |
isAccessibilityActive() |
Получает значение свойства accessibilityActive. |
static boolean |
isFxApplicationThread() |
Возвращает true, если вызывающая нить — нить приложения JavaFX. |
static boolean |
isImplicitExit() |
Получает значение атрибута implicitExit. |
static Optional |
isKeyLocked |
Возвращает флаг, указывающий, находится ли ключ, соответствующий keyCode, в заблокированном (или "включенном") состоянии. |
static boolean |
isNestedLoopRunning() |
Проверяет, запущен ли вложенный цикл обработки событий, возвращая true, если запущен, и false, если нет. |
static boolean |
isSupported |
Запрашивает, поддерживает ли платформа определенный условный функционал. |
static void |
requestNextPulse() |
Запрашивает у Java Runtime выполнить импульс. |
static void |
runLater |
Выполняет указанный Runnable в нити JavaFX Application Thread в неопределенное время в будущем. |
static void |
setImplicitExit |
Устанавливает атрибут implicitExit в указанное значение. |
static void |
startup |
Этот метод запускает JavaFX runtime. |
Подробности свойства
accessibilityActive
public static ReadOnlyBooleanProperty accessibilityActiveProperty
Этот метод может вызываться из любого потока.
- С:
- JavaFX 8u40
- См. также:
Подробности метода
startup
public static void startup(Runnable runnable)
Этот метод может или не может вернуть управление вызывающей стороне до того, как метод run указанного Runnable будет вызван. В любом случае, этот метод не блокируется ожиданием выполнения указанного Runnable. После возврата из этого метода вы можете вызвать runLater(Runnable) с дополнительными Runnable. Эти Runnable будут вызваны также в потоке JavaFX Application после вызова Runnable, переданного в этот метод.
Как уже отмечалось, обычно поток JavaFX Application запускается автоматически. Важно, чтобы этот метод вызывался только тогда, когда среда выполнения JavaFX еще не была инициализирована. Случаи, когда среда выполнения JavaFX запускается автоматически, включают:
- Для стандартных приложений JavaFX, которые расширяют
Applicationи используют либо загрузчик Java, либо один из методов запуска в классе Application для запуска приложения, среда выполнения FX инициализируется загрузчиком до загрузки классаApplication. - Для приложений Swing, которые используют
JFXPanelдля отображения содержимого FX, среда выполнения FX инициализируется при создании первого экземпляраJFXPanel. - Для приложений SWT, которые используют
FXCanvasдля отображения содержимого FX, среда выполнения FX инициализируется при создании первого экземпляраFXCanvas.
Когда приложение не использует ни один из этих общих подходов, разработчик должен вручную запустить среду выполнения JavaFX, вызвав этот метод startup.
Вызов этого метода, когда среда выполнения JavaFX уже запущена, приведет к возникновению исключения IllegalStateException — запрос на запуск среды выполнения JavaFX допустим только один раз.
Примечание: Классы JavaFX должны загружаться из набора именованных javafx.* модулей в пути модуля. Загрузка классов JavaFX из пути класса не поддерживается. При запуске среды выполнения JavaFX, если классы JavaFX не загружаются из ожидаемого именованного модуля, выводится предупреждение. Это предупреждение выводится независимо от того, была ли среда выполнения JavaFX запущена вызовом этого метода или автоматически, как описано выше.
- Параметры:
-
runnable- Runnable, метод run которого будет выполнен в потоке JavaFX Application после его запуска - Исключения:
-
IllegalStateException- если среда выполнения JavaFX уже запущена - С:
- 9
- См. также:
runLater
public static void runLater(Runnable runnable)
ПРИМЕЧАНИЕ: приложениям следует избегать перегрузки JavaFX слишком большим количеством ожидающих Runnable. В противном случае приложение может стать неотзывчивым. Приложениям рекомендуется объединять несколько операций в меньшее количество вызовов runLater. Кроме того, длительные операции должны выполняться в фоновом потоке, насколько это возможно, освобождая поток JavaFX Application для операций с графическим интерфейсом.
Этот метод не должен вызываться до инициализации среды выполнения FX. Для стандартных приложений JavaFX, которые расширяют Application и используют либо загрузчик Java, либо один из методов запуска в классе Application для запуска приложения, среда выполнения FX инициализируется загрузчиком до загрузки класса Application. Для приложений Swing, которые используют JFXPanel для отображения содержимого FX, среда выполнения FX инициализируется при создании первого экземпляра JFXPanel. Для приложений SWT, которые используют FXCanvas для отображения содержимого FX, среда выполнения FX инициализируется при создании первого экземпляра FXCanvas. Для приложений, которые не следуют ни одному из этих подходов, необходимо вручную запустить среду выполнения JavaFX, вызвав startup(Runnable) один раз.
Влияние на согласованность памяти: действия в потоке перед передачей Runnable в этот метод happen-before действия, выполняемые Runnable в потоке JavaFX Application.
- Параметры:
-
runnable- Runnable, метод run которого будет выполнен в потоке JavaFX Application - Исключения:
-
IllegalStateException- если среда выполнения FX не была инициализирована - См. также:
requestNextPulse
public static void requestNextPulse()
- С:
- 9
isFxApplicationThread
public static boolean isFxApplicationThread()
- Возвращает:
- true, если выполнение происходит в потоке JavaFX Application
exit
public static void exit()
Этот метод может вызываться из любого потока.
setImplicitExit
public static void setImplicitExit(boolean implicitExit)
Application.stop() и завершит поток приложения JavaFX. Если этот атрибут равен false, приложение будет продолжать работать нормально даже после закрытия последнего окна, пока приложение не вызовет exit(). Значение по умолчанию равно true. Этот метод может вызываться из любого потока.
- Параметры:
-
implicitExit- флаг, указывающий, следует ли неявно завершить работу при закрытии последнего окна. - С:
- JavaFX 2.2
isImplicitExit
public static boolean isImplicitExit()
Этот метод может вызываться из любого потока.
- Возвращает:
- значение атрибута implicitExit
- С:
- JavaFX 2.2
isSupported
public static boolean isSupported(ConditionalFeature feature)
Например:
// Query whether filter effects are supported
if (Platform.isSupported(ConditionalFeature.EFFECT)) {
// use effects
}
- Параметры:
-
feature- условная функция, о которой идет речь. - Возвращает:
- true, если условная функция поддерживается платформой, в противном случае false
enterNestedEventLoop
public static Object enterNestedEventLoop(Object key)
rval, переданным в вызов метода exitNestedEventLoop, который его разблокирует. Этот метод должен вызываться из обработчика события ввода или из метода run объекта Runnable, переданного в Platform.runLater. Он не должен вызываться во время анимации или обработки макета.
- Параметры:
-
key- Объект, идентифицирующий вложенный цикл событий, который не должен быть null - Возвращает:
- значение, переданное в соответствующий вызов exitEventLoop
- Исключения:
-
IllegalArgumentException- если указанный ключ связан с вложенным циклом событий, который ещё не возвратил значение -
NullPointerException- если ключ равен null -
IllegalStateException- если этот метод вызван во время анимации или обработки макета. -
IllegalStateException- если этот метод вызван на потоке, отличном от потока JavaFX Application. - С:
- 9
exitNestedEventLoop
public static void exitNestedEventLoop(Object key, Object rval)
- Параметры:
-
key- Объект, идентифицирующий вложенный цикл событий, который не должен быть null -
rval- Объект, который возвращается вызывающему методу соответствующего enterNestedEventLoop. Может быть null. - Исключения:
-
IllegalArgumentException- если указанный ключ не связан с активным вложенным циклом событий -
NullPointerException- если ключ равен null -
IllegalStateException- если этот метод вызван на потоке, отличном от потока FX Application - С:
- 9
isKeyLocked
public static Optional<Boolean> isKeyLocked(KeyCode keyCode)
keyCode, в заблокированном (или "включенном") состоянии. keyCode должен быть одним из: KeyCode.CAPS или KeyCode.NUM_LOCK. Если система не может определить состояние указанной keyCode, возвращается пустой Optional. Если на подключенной к системе клавиатуре нет указанной клавиши, возвращается Optional, содержащий false. Этот метод должен вызываться в потоке JavaFX Application.- Параметры:
-
keyCode-KeyCodeсостояния блокировки для запроса - Возвращает:
- состояние блокировки клавиши, соответствующей
keyCode, или пустойOptional, если система не может определить его состояние - Исключения:
-
IllegalArgumentException- еслиkeyCodeне соответствует одному из допустимых значенийKeyCode -
IllegalStateException- если этот метод вызван на потоке, отличном от потока JavaFX Application - С:
- 17
isNestedLoopRunning
public static boolean isNestedLoopRunning()
- Возвращает:
- true, если вложенный цикл событий запущен, и false в противном случае.
- Исключения:
-
IllegalStateException- если этот метод вызван на потоке, отличном от потока JavaFX Application. - С:
- 9
canStartNestedEventLoop
public static boolean canStartNestedEventLoop()
Runnable, переданного в runLater(Runnable). Этот метод должен вызываться в потоке JavaFX Application.- Возвращает:
-
true, если вложенный цикл событий можно запустить, иfalseв противном случае. - Исключения:
-
IllegalStateException- если этот метод вызван на потоке, отличном от потока JavaFX Application. - С:
- 21
isAccessibilityActive
public static boolean isAccessibilityActive()
accessibilityActive.- Описание свойства:
- Указывает, активна ли функция доступности. Это свойство обычно устанавливается в значение true в первый раз, когда технология вспомогательных средств, например, экранный диктор, запрашивает информацию о любом окне JavaFX или его дочерних элементах.
Этот метод может вызываться с любого потока.
- Возвращает:
- значение свойства
accessibilityActive - С:
- JavaFX 8u40
- См. также:
accessibilityActiveProperty
public static ReadOnlyBooleanProperty accessibilityActiveProperty()
Этот метод может вызываться с любого потока.
- Возвращает:
- только для чтения свойство boolean, указывающее, активна ли функция доступности
- С:
- JavaFX 8u40
- См. также:
getPreferences
public static Platform.Preferences getPreferences()
Карта, возвращаемая этим методом, является неизменяемой, что означает, что ключи и значения нельзя добавлять, удалять или обновлять. Вызов любого метода-мутатора в карте всегда вызовет исключение UnsupportedOperationException. Однако сопоставления будут обновляться JavaFX, когда операционная система сообщит о том, что настройка платформы изменилась.
- Возвращает:
- экземпляр
Preferences - С:
- 22
- См. также:
© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.