Класс Dialog<R>
- Параметры типа:
-
R- тип возвращаемого значения диалога через свойствоresult.
- Все реализованные интерфейсы:
EventTarget
- Прямые известные подклассы:
-
Alert,ChoiceDialog,TextInputDialog
public class Dialog<R> extends Object implements EventTarget
DialogPane и предоставляет необходимый API для его отображения пользователям. В JavaFX 8u40 это фактически означает, что DialogPane отображается пользователям внутри Stage, но будущие версии могут предложить альтернативные варианты (например, "лёгкие" или "внутренние" диалоги). Этот API поэтому намеренно игнорирует базовую реализацию и пытается представить общий API для всех возможных реализаций. Класс Dialog имеет единственный параметр обобщения R, который используется для представления типа свойства result (а также, как преобразовывать из ButtonType в R с помощью result converter Callback).
Важно: Все разработчики, которые выбирают создание собственных диалогов путём расширения класса Dialog, должны понимать важность свойства result converter. Конвертер результата всегда должен быть установлен, когда тип R не является Void или ButtonType. Если этого не учесть, разработчики столкнутся с исключениями ClassCastExceptions в своём коде из-за невозможности преобразования из ButtonType через result converter.
Вероятно, большинству разработчиков будет лучше использовать класс Alert (для предопределённых предупреждений в стиле уведомлений) или один из двух предварительно созданных диалогов (TextInputDialog и ChoiceDialog), в зависимости от их потребностей.
После создания экземпляра Dialog следующим шагом является его конфигурация. Почти все свойства Dialog не связаны с содержимым диалога, исключениями являются contentTextProperty(), headerTextProperty() и graphicProperty(), которые просто пересылают API соответствующим свойствам DialogPane, хранящемуся в свойстве dialog pane. Эти три свойства пересылаются из DialogPane для удобства разработчика. Разработчикам, желающим настроить свой диалог, часто потребуется использовать код, похожий на dialog.getDialogPane().setExpandableContent(node).
После настройки этих свойств остаётся только убедиться, что все кнопки (созданные с помощью ButtonType и метода DialogPane.createButton(ButtonType)) полностью настроены. Разработчики быстро заметят, что количество возможностей настройки через класс ButtonType минимально. Это намеренно, но не означает, что разработчики не могут изменить кнопки, созданные классом ButtonType, которые были указаны. Для этого разработчики просто вызывают метод DialogPane.lookupButton(ButtonType) с ButtonType (предполагая, что он уже установлен в списке DialogPane.getButtonTypes()). Возвращаемый узел обычно имеет тип Button, но это зависит от того, был ли переопределён метод DialogPane.createButton(ButtonType). Типичный подход поэтому выглядит следующим образом:
ButtonType loginButtonType = new ButtonType("Login", ButtonData.OK_DONE);
Dialog<String> dialog = new Dialog<>();
dialog.setTitle("Login Dialog");
dialog.setContentText("Would you like to log in?");
dialog.getDialogPane().getButtonTypes().add(loginButtonType);
boolean disabled = false; // computed based on content of text fields, for example
dialog.getDialogPane().lookupButton(loginButtonType).setDisable(disabled);
dialog.showAndWait(); После создания и полной настройки Dialog следующим шагом является его отображение. Чаще всего диалоги отображаются в модальном и блокирующем режиме. "Модальный" означает, что диалог предотвращает взаимодействие пользователя с приложением, пока он отображается, а "блокирующий" означает, что выполнение кода останавливается в точке, где диалог отображается. Это означает, что вы можете отобразить диалог, дождаться ответа пользователя и продолжить выполнение кода, непосредственно следующего за вызовом отображения, позволяя разработчикам сразу обработать ввод пользователя из диалога (если это актуально).
Диалоги JavaFX по умолчанию модальные (вы можете изменить это с помощью API initModality(javafx.stage.Modality)). Чтобы указать, хотите ли вы блокирующие или неблокирующие диалоги, разработчики просто вызывают showAndWait() или show() (соответственно). По умолчанию большинство разработчиков должны использовать showAndWait() из-за простоты кода в таких ситуациях. Ниже представлены три фрагмента кода, показывающие три равно допустимых способа отображения диалога:
Вариант 1: Традиционный подход
Optional<ButtonType> result = dialog.showAndWait();
if (result.isPresent() && result.get() == ButtonType.OK) {
formatSystem();
} Вариант 2: Традиционный + Вариантный подход
dialog.showAndWait().ifPresent(response -> {
if (response == ButtonType.OK) {
formatSystem();
}
}); Вариант 3: Полностью лямбда-подход
dialog.showAndWait()
.filter(response -> response == ButtonType.OK)
.ifPresent(response -> formatSystem()); Нет лучшего или худшего варианта из трёх перечисленных выше, поэтому разработчикам рекомендуется руководствоваться своими предпочтениями стиля. Цель демонстрации выше — помочь разработчикам познакомиться с API Optional, который является новым в Java 8 и может быть не знаком многим разработчикам.
Валидация диалога/Перехват действий кнопок
В некоторых случаях желательно предотвратить закрытие диалога, пока какой-либо аспект диалога не станет внутренне согласованным (например, форма внутри диалога не имеет всех полей в корректном состоянии). Для этого пользователям API диалогов следует ознакомиться с методом DialogPane.lookupButton(ButtonType). Передав ButtonType (который уже установлен в списке button types), пользователи получат узел, который, как правило, имеет тип Button (но это зависит от того, был ли переопределён метод DialogPane.createButton(ButtonType)). С этой кнопкой пользователи могут добавить обработчик событий, который вызывается перед стандартной обработкой событий кнопки, и, таким образом, пользователи могут предотвратить обработку событий, consuming событие. Вот упрощённый пример:
final Button btOk = (Button) dlg.getDialogPane().lookupButton(ButtonType.OK);
btOk.addEventFilter(ActionEvent.ACTION, event -> {
if (!validateAndStore()) {
event.consume();
}
}); Правила закрытия диалога
Важно понимать, что происходит при закрытии диалога, а также как диалог можно закрыть, особенно в аномальных ситуациях закрытия (например, когда нажимается кнопка 'X' в строке заголовка диалога или когда вводятся специфичные для операционной системы сочетания клавиш (например, alt-F4 в Windows)). К счастью, результат определён в этих ситуациях и может быть лучше всего обобщён в следующих пунктах:
- Диалоги JavaFX могут закрываться "аномально" (как определено выше) только в двух ситуациях:
- Когда у диалога только одна кнопка, или
- Когда у диалога несколько кнопок, при условии, что одна из них соответствует одному из следующих требований:
- Кнопка имеет
ButtonType, чьё значениеButtonBar.ButtonDataимеет типButtonBar.ButtonData.CANCEL_CLOSE. - Кнопка имеет
ButtonType, чьё значениеButtonBar.ButtonDataвозвращает true при вызовеButtonBar.ButtonData.isCancelButton().
- Кнопка имеет
- Во всех остальных ситуациях диалог откажется реагировать на все запросы на закрытие, оставаясь открытым, пока пользователь не нажмёт одну из доступных кнопок в области
DialogPaneдиалога. - Если диалог закрывается аномально и содержит кнопку, удовлетворяющую одному из двух вышеуказанных критериев, диалог попытается установить свойство
resultв значение, возвращённое из вызоваresult converterс первой соответствующейButtonType. - Если по какой-либо причине конвертер результата возвращает null или если диалог закрывается при наличии только одной не-кнопки отмены, свойство
resultбудет равно null, а методshowAndWait()вернётOptional.empty(). Этот последний момент означает, что если вы используете вариант 2 или 3 (как показано ранее в документации к классу), лямбдаOptional.ifPresent(java.util.function.Consumer)никогда не будет вызвана, и код продолжит выполняться так, как если бы диалог не возвращал никакого значения.
- Since:
- JavaFX 8u40
- See Also:
Сводка свойств
| Тип | Свойство | Описание |
|---|---|---|
final StringProperty |
contentText |
Свойство, представляющее текстовое содержимое области диалога. |
final ObjectProperty |
dialogPane |
Корневой узел диалога; DialogPane содержит все визуальные элементы, отображаемые в диалоге. |
final ObjectProperty |
graphic |
Графика диалога, отображаемая либо в заголовке, если он отображается, либо слева от content. |
final StringProperty |
headerText |
Свойство, представляющее заголовок области диалога. |
final ReadOnlyDoubleProperty |
height |
Свойство, представляющее высоту диалога. |
final ObjectProperty |
onCloseRequest |
Вызывается при внешнем запросе о закрытии данного Dialog. |
final ObjectProperty |
onHidden |
Вызывается сразу после скрытия диалога. |
final ObjectProperty |
onHiding |
Вызывается непосредственно перед скрытием диалога. |
final ObjectProperty |
onShowing |
Вызывается непосредственно перед отображением диалога. |
final ObjectProperty |
onShown |
Вызывается сразу после отображения диалога. |
final BooleanProperty |
resizable |
Определяет, можно ли изменять размер диалога. |
final ObjectProperty |
resultConverter |
API для преобразования ButtonType, на который нажал пользователь, в результат, который можно вернуть через свойство result. |
final ObjectProperty |
result |
Свойство, представляющее возвращаемое значение диалога. |
final ReadOnlyBooleanProperty |
showing |
Указывает, отображается ли в данный момент диалог. |
final StringProperty |
title |
Возвращает свойство заголовка диалога. |
final ReadOnlyDoubleProperty |
width |
Свойство, представляющее ширину диалога. |
final ReadOnlyDoubleProperty |
x |
Горизонтальное положение этого Dialog. |
final ReadOnlyDoubleProperty |
y |
Вертикальное положение этого Dialog. |
Сводка конструкторов
| Конструктор | Описание |
|---|---|
Dialog() |
Создает диалог без указанного владельца. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
final <E extends Event> |
addEventFilter |
Регистрирует фильтр событий для этого целевого объекта. |
final <E extends Event> |
addEventHandler |
Регистрирует обработчик событий для этого целевого объекта. |
EventDispatchChain |
buildEventDispatchChain |
Создает цепочку обработки событий для этого целевого объекта. |
final void |
close() |
Закрывает этот Dialog. |
final StringProperty |
contentTextProperty() |
Свойство, представляющее текстовое содержимое панели диалога. |
final ObjectProperty |
dialogPaneProperty() |
Корневой узел диалога, DialogPane содержит все визуальные элементы, отображаемые в диалоге. |
final String |
getContentText() |
Возвращает текущий текст содержимого для этого DialogPane. |
final DialogPane |
getDialogPane() |
Получает значение свойства dialogPane. |
final Node |
getGraphic() |
Получает значение свойства graphic. |
final String |
getHeaderText() |
Возвращает текущий текст заголовка для этого DialogPane. |
final double |
getHeight() |
Возвращает высоту диалога. |
final Modality |
getModality() |
Получает атрибут модальности для этого диалога. |
final EventHandler |
getOnCloseRequest() |
Получает значение свойства onCloseRequest. |
final EventHandler |
getOnHidden() |
Получает значение свойства onHidden. |
final EventHandler |
getOnHiding() |
Получает значение свойства onHiding. |
final EventHandler |
getOnShowing() |
Получает значение свойства onShowing. |
final EventHandler |
getOnShown() |
Получает значение свойства onShown. |
final Window |
getOwner() |
Возвращает окно-владелец для этого диалога, или null для диалога без владельца. |
final R |
getResult() |
Получает значение свойства result. |
final Callback |
getResultConverter() |
Получает значение свойства resultConverter. |
final String |
getTitle() |
Возвращает заголовок диалога. |
final double |
getWidth() |
Возвращает ширину диалога. |
final double |
getX() |
Получает значение свойства x. |
final double |
getY() |
Получает значение свойства y. |
final ObjectProperty |
graphicProperty() |
Графика диалога, отображаемая либо в заголовке, если он отображается, либо слева от content. |
final StringProperty |
headerTextProperty() |
Свойство, представляющее текст заголовка для панели диалога. |
final ReadOnlyDoubleProperty |
heightProperty() |
Свойство, представляющее высоту диалога. |
final void |
hide() |
Скрывает этот Dialog. |
final void |
initModality |
Устанавливает режим работы этого диалога. |
final void |
initOwner |
Устанавливает окно-владелец Window для этого диалога, или null для диалога верхнего уровня без владельца. |
final void |
initStyle |
Устанавливает стиль для этого диалога. |
final boolean |
isResizable() |
Возвращает, можно ли изменять размер диалога. |
final boolean |
isShowing() |
Возвращает, отображается ли диалог. |
final ObjectProperty |
onCloseRequestProperty() |
Вызывается при внешнем запросе на закрытие этого Dialog. |
final ObjectProperty |
onHiddenProperty() |
Вызывается сразу после того, как диалог был скрыт. |
final ObjectProperty |
onHidingProperty() |
Вызывается непосредственно перед скрытием диалога. |
final ObjectProperty |
onShowingProperty() |
Вызывается непосредственно перед отображением диалога. |
final ObjectProperty |
onShownProperty() |
Вызывается сразу после отображения диалога. |
final <E extends Event> |
removeEventFilter |
Отменяет ранее зарегистрированный фильтр событий для этого целевого объекта. |
final <E extends Event> |
removeEventHandler |
Отменяет ранее зарегистрированный обработчик событий для этого целевого объекта. |
final BooleanProperty |
resizableProperty() |
Представляет возможность изменения размера диалога. |
final ObjectProperty |
resultConverterProperty() |
API для преобразования нажатой пользователем ButtonType в результат, который может быть возвращен через свойство result. |
final ObjectProperty |
resultProperty() |
Свойство, представляющее возвращаемое значение из диалога. |
final void |
setContentText |
Устанавливает строку для отображения в области содержимого диалога. |
final void |
setDialogPane |
Устанавливает значение свойства dialogPane. |
final void |
setGraphic |
Устанавливает графику диалога, которая будет отображаться либо в заголовке, если он отображается, либо слева от content. |
final void |
setHeaderText |
Устанавливает строку для отображения в области заголовка диалога. |
final void |
setHeight |
Устанавливает высоту диалога. |
final void |
setOnCloseRequest |
Устанавливает значение свойства onCloseRequest. |
final void |
setOnHidden |
Устанавливает значение свойства onHidden. |
final void |
setOnHiding |
Устанавливает значение свойства onHiding. |
final void |
setOnShowing |
Устанавливает значение свойства onShowing. |
final void |
setOnShown |
Устанавливает значение свойства onShown. |
final void |
setResizable |
Устанавливает возможность изменения размера диалога пользователем. |
final void |
setResult |
Устанавливает значение свойства result. |
final void |
setResultConverter |
Устанавливает значение свойства resultConverter. |
final void |
setTitle |
Изменяет заголовок диалога. |
final void |
setWidth |
Устанавливает ширину диалога. |
final void |
setX |
Устанавливает значение свойства x. |
final void |
setY |
Устанавливает значение свойства y. |
final void |
show() |
Отображает диалог, но не ожидает ответа пользователя (другими словами, отображает неблокируемый диалог). |
final Optional |
showAndWait() |
Отображает диалог и ожидает ответа пользователя (другими словами, отображает блокирующий диалог, с возвращаемым значением введённые данные). |
final ReadOnlyBooleanProperty |
showingProperty() |
Отображает, отображается ли диалоговое окно в данный момент. |
final StringProperty |
titleProperty() |
Возвращает свойство titleProperty диалогового окна. |
final ReadOnlyDoubleProperty |
widthProperty() |
Свойство, представляющее ширину диалогового окна. |
final ReadOnlyDoubleProperty |
xProperty() |
Горизонтальное расположение этого Dialog. |
final ReadOnlyDoubleProperty |
yProperty() |
Вертикальное расположение этого Dialog. |
Подробности свойств
dialogPane
public final ObjectProperty<DialogPane> dialogPaneProperty
DialogPane содержит все визуальные элементы, отображаемые в диалоге. Таким образом, можно полностью настроить отображение диалога, изменив существующий диалоговый блок или создав новый.- См. также:
contentText
public final StringProperty contentTextProperty
content node, что означает, что если установлены оба свойства — узел содержимого и contentText — текст содержимого не будет отображен в стандартном экземпляре DialogPane.- См. также:
headerText
public final StringProperty headerTextProperty
header node, что означает, что если установлены оба свойства — узел заголовка и headerText — текст заголовка не будет отображен в стандартном экземпляре DialogPane.- См. также:
graphic
public final ObjectProperty<Node> graphicProperty
content.- См. также:
result
public final ObjectProperty<R> resultProperty
result converter, который предназначен для преобразования нажатой пользователем ButtonType в значение типа R. Дополнительные сведения см. в JavaDoc класса Dialog.- См. также:
resultConverter
public final ObjectProperty<Callback<ButtonType,R>> resultConverterProperty
ButtonType в результат, который может быть возвращен через свойство result. Это необходимо, поскольку ButtonType представляет собой визуальную кнопку в диалоговом окне и не знает, как сопоставить себя с действительным результатом — это требование реализации диалога с использованием конвертера результатов. В некоторых случаях тип результата подкласса Dialog — ButtonType (что означает, что конвертер результата может быть null), но в некоторых случаях (где тип результата, R, не ButtonType или Void), этот обратный вызов должен быть указан.- См. также:
showing
public final ReadOnlyBooleanProperty showingProperty
- См. также:
resizable
public final BooleanProperty resizableProperty
- См. также:
width
public final ReadOnlyDoubleProperty widthProperty
- См. также:
height
public final ReadOnlyDoubleProperty heightProperty
- См. также:
title
public final StringProperty titleProperty
- См. также:
x
public final ReadOnlyDoubleProperty xProperty
Dialog. Изменение этого атрибута переместит Dialog по горизонтали.- См. также:
y
public final ReadOnlyDoubleProperty yProperty
Dialog. Изменение этого атрибута переместит Dialog по вертикали.- См. также:
onShowing
public final ObjectProperty<EventHandler<DialogEvent>> onShowingProperty
- См. также:
onShown
public final ObjectProperty<EventHandler<DialogEvent>> onShownProperty
- См. также:
onHiding
public final ObjectProperty<EventHandler<DialogEvent>> onHidingProperty
- См. также:
onHidden
public final ObjectProperty<EventHandler<DialogEvent>> onHiddenProperty
Dialog, этот обработчик событий вызывается, позволяя разработчику очистить ресурсы или выполнить другие задачи при закрытии Alert.- См. также:
onCloseRequest
public final ObjectProperty<EventHandler<DialogEvent>> onCloseRequestProperty
Dialog. Установленный обработчик событий может предотвратить закрытие диалогового окна, обработав полученное событие.- См. также:
Подробности конструкторов
Диалог
public Dialog()
Подробное описание методов
show
public final void show()
result property, либо добавить слушатель к свойству результата, чтобы быть уведомлёнными о его установке.- Исключения:
-
IllegalStateException- если этот метод вызывается в потоке, отличном от потока приложения JavaFX.
showAndWait
public final Optional<R> showAndWait()
Этот метод должен вызываться в потоке приложения JavaFX. Кроме того, он должен вызываться либо из обработчика событий ввода, либо из метода run объекта Runnable, переданного в Platform.runLater. Он не должен вызываться во время анимации или обработки макета.
- Возвращает:
- Объект
Optional, содержащийresult. Для получения более подробной информации обратитесь к документации классаDialog. - Исключения:
-
IllegalStateException- если этот метод вызывается в потоке, отличном от потока приложения JavaFX. -
IllegalStateException- если этот метод вызывается во время анимации или обработки макета.
close
public final void close()
Dialog. Этот вызов эквивалентен hide().hide
public final void hide()
Dialog.initModality
public final void initModality(Modality modality)
- Значение по умолчанию:
- Modality.APPLICATION_MODAL
- Параметры:
-
modality- режим работы для этого диалога. - Исключения:
-
IllegalStateException- если это свойство установлено после того, как диалог был отображён.
getModality
public final Modality getModality()
- Возвращает:
- режим работы.
initStyle
public final void initStyle(StageStyle style)
- Значение по умолчанию:
- StageStyle.DECORATED
- Параметры:
-
style- стиль для этого диалога. - Исключения:
-
IllegalStateException- если это свойство установлено после того, как диалог был отображён.
initOwner
public final void initOwner(Window window)
Window для этого диалога или null для диалога верхнего уровня без владельца. Это необходимо сделать до отображения диалога.- Значение по умолчанию:
- null
- Параметры:
-
window- владелецWindowдля этого диалога. - Исключения:
-
IllegalStateException- если это свойство установлено после того, как диалог был отображён.
getOwner
public final Window getOwner()
- Возвращает:
- окно-владелец.
dialogPaneProperty
public final ObjectProperty<DialogPane> dialogPaneProperty()
DialogPane содержит все визуальные элементы, отображаемые в диалоге. Таким образом, можно полностью настроить отображение диалога, изменив существующую область диалога или создав новую.- Возвращает:
- свойство
dialogPane - См. также:
getDialogPane
public final DialogPane getDialogPane()
dialogPane.- Описание свойства:
- Корневой узел диалога,
DialogPaneсодержит все визуальные элементы, отображаемые в диалоге. Таким образом, можно полностью настроить отображение диалога, изменив существующую область диалога или создав новую. - Возвращает:
- значение свойства
dialogPane - См. также:
setDialogPane
public final void setDialogPane(DialogPane value)
dialogPane.- Описание свойства:
- Корневой узел диалога,
DialogPaneсодержит все визуальные элементы, отображаемые в диалоге. Таким образом, можно полностью настроить отображение диалога, изменив существующую область диалога или создав новую. - Параметры:
-
value- значение для свойстваdialogPane - См. также:
contentTextProperty
public final StringProperty contentTextProperty()
content node, что означает, что если установлены оба свойства: узел содержимого и contentText, текст содержимого не будет отображаться в экземпляре DialogPane по умолчанию.- Возвращает:
- свойство, представляющее текстовое содержимое области диалога
- См. также:
getContentText
public final String getContentText()
- Возвращает:
- текущий текст содержимого для этого DialogPane
setContentText
public final void setContentText(String contentText)
content node, что означает, что если установлены оба свойства: узел содержимого и contentText, текст содержимого не будет отображаться в экземпляре DialogPane по умолчанию.- Параметры:
-
contentText- строка для отображения в области содержимого диалога
headerTextProperty
public final StringProperty headerTextProperty()
header node, что означает, что если установлены оба свойства: узел заголовка и headerText, текст заголовка не будет отображаться в экземпляре DialogPane по умолчанию.- Возвращает:
- свойство, представляющее текст заголовка области диалога
- См. также:
getHeaderText
public final String getHeaderText()
- Возвращает:
- текущий текст заголовка для этого DialogPane
setHeaderText
public final void setHeaderText(String headerText)
header node, что означает, что если установлены оба свойства: узел заголовка и headerText, текст заголовка не будет отображаться в экземпляре DialogPane по умолчанию.- Параметры:
-
headerText- строка для отображения в области заголовка диалога
graphicProperty
public final ObjectProperty<Node> graphicProperty()
content.- Returns:
- Объект-свойство, содержащий текущую графику.
- See Also:
getGraphic
public final Node getGraphic()
graphic.- Описание свойства:
- Графика диалога, отображаемая в заголовке, если он есть, или слева от
content. - Returns:
- значение свойства
graphic - See Also:
setGraphic
public final void setGraphic(Node graphic)
content.- Parameters:
-
graphic- Новая графика диалога или null, если графика не должна отображаться.
resultProperty
public final ObjectProperty<R> resultProperty()
result converter, который предназначен для преобразования ButtonType, на которую нажал пользователь, в значение типа R. Для получения более подробной информации см. JavaDoc класса Dialog.- Returns:
- свойство, представляющее возвращаемое значение из диалога
- See Also:
getResult
public final R getResult()
result.- Описание свойства:
- Свойство, представляющее возвращаемое значение из диалога. Результат генерируется с помощью
result converter, который предназначен для преобразованияButtonType, на которую нажал пользователь, в значение типа R. Для получения более подробной информации см. JavaDoc классаDialog. - Returns:
- значение свойства
result - See Also:
setResult
public final void setResult(R value)
result.- Описание свойства:
- Свойство, представляющее возвращаемое значение из диалога. Результат генерируется с помощью
result converter, который предназначен для преобразованияButtonType, на которую нажал пользователь, в значение типа R. Для получения более подробной информации см. JavaDoc классаDialog. - Parameters:
-
value- значение для свойстваresult - See Also:
resultConverterProperty
public final ObjectProperty<Callback<ButtonType,R>> resultConverterProperty()
ButtonType, на которую нажал пользователь, в результат, который может быть возвращён через свойство result. Это необходимо, так как ButtonType представляет собой визуальную кнопку в диалоге и не знает, как отобразить себя в допустимый результат. Это требование реализации диалога с использованием преобразователя результатов. В некоторых случаях тип результата подкласса Dialog — ButtonType (что означает, что преобразователь результата может быть null), но в некоторых случаях (когда тип результата, R, не ButtonType или Void), этот обратный вызов должен быть указан.- Returns:
- API для преобразования
ButtonType, на которую нажал пользователь - See Also:
getResultConverter
public final Callback<ButtonType,R> getResultConverter()
resultConverter.- Описание свойства:
- API для преобразования
ButtonType, на которую нажал пользователь, в результат, который может быть возвращён через свойствоresult. Это необходимо, так какButtonTypeпредставляет собой визуальную кнопку в диалоге и не знает, как отобразить себя в допустимый результат. Это требование реализации диалога с использованием преобразователя результатов. В некоторых случаях тип результата подкласса Dialog — ButtonType (что означает, что преобразователь результата может быть null), но в некоторых случаях (когда тип результата, R, не ButtonType или Void), этот обратный вызов должен быть указан. - Returns:
- значение свойства
resultConverter - See Also:
setResultConverter
public final void setResultConverter(Callback<ButtonType,R> value)
resultConverter.- Описание свойства:
- API для преобразования
ButtonType, на которую нажал пользователь, в результат, который может быть возвращён через свойствоresult. Это необходимо, так какButtonTypeпредставляет собой визуальную кнопку в диалоге и не знает, как отобразить себя в допустимый результат. Это требование реализации диалога с использованием преобразователя результатов. В некоторых случаях тип результата подкласса Dialog — ButtonType (что означает, что преобразователь результата может быть null), но в некоторых случаях (когда тип результата, R, не ButtonType или Void), этот обратный вызов должен быть указан. - Parameters:
-
value- значение для свойстваresultConverter - See Also:
showingProperty
public final ReadOnlyBooleanProperty showingProperty()
- Returns:
- свойство, представляющее, отображается ли диалог в данный момент
- See Also:
isShowing
public final boolean isShowing()
- Returns:
- true, если диалог отображается.
resizableProperty
public final BooleanProperty resizableProperty()
- Returns:
- свойство, представляющее, является ли диалог изменяемым по размеру
- See Also:
isResizable
public final boolean isResizable()
- Returns:
- true, если диалог изменяем по размеру.
setResizable
public final void setResizable(boolean resizable)
- Parameters:
-
resizable- true, если диалог должен быть изменяемым по размеру.
widthProperty
public final ReadOnlyDoubleProperty widthProperty()
- Returns:
- свойство, представляющее ширину диалога
- See Also:
getWidth
public final double getWidth()
- Returns:
- ширина диалога
setWidth
public final void setWidth(double width)
- Параметры:
-
width- ширина диалога
heightProperty
public final ReadOnlyDoubleProperty heightProperty()
- Возвращает:
- свойство, представляющее высоту диалога
- См. также:
getHeight
public final double getHeight()
- Возвращает:
- высоту диалога
setHeight
public final void setHeight(double height)
- Параметры:
-
height- высота диалога
titleProperty
public final StringProperty titleProperty()
- Возвращает:
- свойство title диалога
- См. также:
getTitle
public final String getTitle()
- Возвращает:
- заголовок диалога
setTitle
public final void setTitle(String title)
- Параметры:
-
title- заголовок диалога
getX
public final double getX()
x.- Описание свойства:
- Горизонтальное положение этого
Dialog. Изменение этого атрибута переместитDialogпо горизонтали. - Возвращает:
- значение свойства
x - См. также:
setX
public final void setX(double x)
x.- Описание свойства:
- Горизонтальное положение этого
Dialog. Изменение этого атрибута переместитDialogпо горизонтали. - Параметры:
-
x- значение для свойстваx - См. также:
xProperty
public final ReadOnlyDoubleProperty xProperty()
Dialog. Изменение этого атрибута переместит Dialog по горизонтали.- Возвращает:
- горизонтальное положение этого
Dialog - См. также:
getY
public final double getY()
y.- Описание свойства:
- Вертикальное положение этого
Dialog. Изменение этого атрибута переместитDialogпо вертикали. - Возвращает:
- значение свойства
y - См. также:
setY
public final void setY(double y)
y.- Описание свойства:
- Вертикальное положение этого
Dialog. Изменение этого атрибута переместитDialogпо вертикали. - Параметры:
-
y- значение для свойстваy - См. также:
yProperty
public final ReadOnlyDoubleProperty yProperty()
Dialog. Изменение этого атрибута переместит Dialog по вертикали.- Возвращает:
- вертикальное положение этого
Dialog - См. также:
buildEventDispatchChain
public EventDispatchChain buildEventDispatchChain(EventDispatchChain tail)
EventTargetEventTarget. Этот целевой объект события не добавляется автоматически в цепочку, поэтому, если он хочет обрабатывать события, ему необходимо добавить свой EventDispatcher в цепочку. В случае, если целевой объект события является частью иерархии, цепочка обычно строится из обработчиков событий, собранных от корня иерархии до целевого объекта события.
Цепочка обработки событий строится путем модификации предоставленной начальной цепочки обработки событий. Возвращаемая цепочка должна иметь начальную цепочку в конце, поэтому обработчики должны быть добавлены в начало начальной цепочки.
Вызывающая сторона не должна предполагать, что начальная цепочка остается неизменной, а также что возвращаемое значение будет ссылаться на другую цепочку.
- Определено в:
-
buildEventDispatchChainв интерфейсеEventTarget - Параметры:
-
tail- начальная цепочка для построения - Возвращает:
- результирующая цепочка обработки событий для этого объекта
addEventHandler
public final <E extends Event> void addEventHandler(EventType<E> eventType, EventHandler<? super E> eventHandler)
EventTarget Обработчик вызывается, когда объект получает Event указанного типа во время фазы всплытия доставки события.
- Определено в:
-
addEventHandlerв интерфейсеEventTarget - Тип параметров:
-
E- класс события обработчика - Параметры:
-
eventType- тип событий, получаемых обработчиком -
eventHandler- обработчик событий
removeEventHandler
public final <E extends Event> void removeEventHandler(EventType<E> eventType, EventHandler<? super E> eventHandler)
EventTarget Поскольку возможно зарегистрировать один экземпляр EventHandler для разных типов событий, вызывающая сторона должна указать тип события, из которого необходимо отменить регистрацию обработчика.
- Определено в:
-
removeEventHandlerв интерфейсеEventTarget - Тип параметров:
-
E- класс события обработчика - Параметры:
-
eventType- тип события, из которого нужно отменить регистрацию -
eventHandler- обработчик событий
addEventFilter
public final <E extends Event> void addEventFilter(EventType<E> eventType, EventHandler<? super E> eventFilter)
EventTarget Фильтр вызывается, когда объект получает Event указанного типа во время фазы захвата доставки события.
- Определено в:
-
addEventFilterв интерфейсеEventTarget - Тип параметров:
-
E- класс события фильтра - Параметры:
-
eventType- тип событий, получаемых фильтром -
eventFilter- фильтр событий
removeEventFilter
public final <E extends Event> void removeEventFilter(EventType<E> eventType, EventHandler<? super E> eventFilter)
EventTarget Поскольку возможно зарегистрировать один экземпляр EventHandler для разных типов событий, вызывающему объекту необходимо указать тип события, из которого следует отменить регистрацию фильтра.
- Specified by:
-
removeEventFilterв интерфейсеEventTarget - Type Parameters:
-
E- класс события фильтра - Parameters:
-
eventType- тип события, из которого необходимо отменить регистрацию -
eventFilter- фильтр событий
setOnShowing
public final void setOnShowing(EventHandler<DialogEvent> value)
onShowing.- Описание свойства:
- Вызывается непосредственно перед отображением диалогового окна.
- Parameters:
-
value- значение для свойстваonShowing - См. также:
getOnShowing
public final EventHandler<DialogEvent> getOnShowing()
onShowing.- Описание свойства:
- Вызывается непосредственно перед отображением диалогового окна.
- Returns:
- значение свойства
onShowing - См. также:
onShowingProperty
public final ObjectProperty<EventHandler<DialogEvent>> onShowingProperty()
- Returns:
- свойство
onShowing - См. также:
setOnShown
public final void setOnShown(EventHandler<DialogEvent> value)
onShown.- Описание свойства:
- Вызывается сразу после отображения диалогового окна.
- Parameters:
-
value- значение для свойстваonShown - См. также:
getOnShown
public final EventHandler<DialogEvent> getOnShown()
onShown.- Описание свойства:
- Вызывается сразу после отображения диалогового окна.
- Returns:
- значение свойства
onShown - См. также:
onShownProperty
public final ObjectProperty<EventHandler<DialogEvent>> onShownProperty()
- Returns:
- свойство
onShown - См. также:
setOnHiding
public final void setOnHiding(EventHandler<DialogEvent> value)
onHiding.- Описание свойства:
- Вызывается непосредственно перед скрытием диалогового окна.
- Parameters:
-
value- значение для свойстваonHiding - См. также:
getOnHiding
public final EventHandler<DialogEvent> getOnHiding()
onHiding.- Описание свойства:
- Вызывается непосредственно перед скрытием диалогового окна.
- Returns:
- значение свойства
onHiding - См. также:
onHidingProperty
public final ObjectProperty<EventHandler<DialogEvent>> onHidingProperty()
- Returns:
- свойство
onHiding - См. также:
setOnHidden
public final void setOnHidden(EventHandler<DialogEvent> value)
onHidden.- Описание свойства:
- Вызывается сразу после скрытия диалогового окна. Когда диалоговое окно скрыто, этот обработчик событий вызывается, позволяя разработчику очистить ресурсы или выполнить другие задачи при закрытии
Alert. - Parameters:
-
value- значение для свойстваonHidden - См. также:
getOnHidden
public final EventHandler<DialogEvent> getOnHidden()
onHidden.- Описание свойства:
- Вызывается сразу после скрытия диалогового окна. Когда диалоговое окно скрыто, этот обработчик событий вызывается, позволяя разработчику очистить ресурсы или выполнить другие задачи при закрытии
Alert. - Returns:
- значение свойства
onHidden - См. также:
onHiddenProperty
public final ObjectProperty<EventHandler<DialogEvent>> onHiddenProperty()
Alert.- Returns:
- свойство
onHidden - См. также:
setOnCloseRequest
public final void setOnCloseRequest(EventHandler<DialogEvent> value)
onCloseRequest.- Описание свойства:
- Вызывается при внешнем запросе на закрытие этого
Dialog. Установленный обработчик событий может предотвратить закрытие диалогового окна, потребляя полученное событие. - Parameters:
-
value- значение для свойстваonCloseRequest - См. также:
getOnCloseRequest
public final EventHandler<DialogEvent> getOnCloseRequest()
onCloseRequest.- Описание свойства:
- Вызывается при внешнем запросе на закрытие этого
Dialog. Установленный обработчик событий может предотвратить закрытие диалогового окна, потребляя полученное событие. - Returns:
- значение свойства
onCloseRequest - См. также:
onCloseRequestProperty
public final ObjectProperty<EventHandler<DialogEvent>> onCloseRequestProperty()
Dialog. Установленный обработчик событий может предотвратить закрытие диалогового окна, потребляя полученное событие.- Returns:
- свойство
onCloseRequest - См. также:
© 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.