Класс SkinBase<C extends Control>
- Все реализованные интерфейсы:
Skin<C>
- Прямые известные подклассы:
-
AccordionSkin,ButtonBarSkin,ChoiceBoxSkin,ComboBoxBaseSkin,HTMLEditorSkin,LabeledSkinBase,MenuBarSkin,MenuButtonSkinBase,PaginationSkin,ProgressIndicatorSkin,ScrollBarSkin,ScrollPaneSkin,SeparatorSkin,SliderSkin,SpinnerSkin,SplitPaneSkin,TabPaneSkin,TextInputControlSkin,ToolBarSkin,VirtualContainerBase
public abstract class SkinBase<C extends Control>
extends Object
implements Skin<C> skin. Элемент пользовательского интерфейса абстрагируется с помощью интерфейса Skinnable.- С тех пор:
- JavaFX 8.0
Краткое описание конструкторов
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
protected double | computeBaselineOffset(double topInset,
double rightInset,
double bottomInset,
double leftInset) | Вычисляет смещение базовой линии на основе первого управляемого дочернего элемента. |
protected double | computeMaxHeight(double width,
double topInset,
double rightInset,
double bottomInset,
double leftInset) | Вычисляет максимальную допустимую высоту элемента Skin на основе заданной ширины. |
protected double | computeMaxWidth(double height,
double topInset,
double rightInset,
double bottomInset,
double leftInset) | Вычисляет максимальную допустимую ширину элемента Skin на основе заданной высоты. |
protected double | computeMinHeight(double width,
double topInset,
double rightInset,
double bottomInset,
double leftInset) | Вычисляет минимальную допустимую высоту элемента Skin на основе заданной ширины. |
protected double | computeMinWidth(double height,
double topInset,
double rightInset,
double bottomInset,
double leftInset) | Вычисляет минимальную допустимую ширину элемента Skin на основе заданной высоты. |
protected double | computePrefHeight(double width,
double topInset,
double rightInset,
double bottomInset,
double leftInset) | Вычисляет предпочтительную высоту этого элемента SkinBase. |
protected double | computePrefWidth(double height,
double topInset,
double rightInset,
double bottomInset,
double leftInset) | Вычисляет предпочтительную ширину этого элемента SkinBase. |
protected void | consumeMouseEvents(boolean value) | Определяет, должны ли все события мыши автоматически обрабатываться. |
protected void | executeAccessibleAction(AccessibleAction action,
Object... parameters) | Этот метод вызывается технологией вспомогательных средств для запроса выполнения действия, указанного аргументом. |
ObservableList<Node> | getChildren() | Возвращает дочерние элементы элемента skin. |
static List<CssMetaData<? extends Styleable,?>> | getClassCssMetaData() | Возвращает CssMetaData, связанный с этим классом, который может включать CssMetaData его суперклассов. |
List<CssMetaData<? extends Styleable,?>> | getCssMetaData() | Этот метод должен делегировать Node.getClassCssMetaData() для доступа к CssMetaData узла без необходимости рефлексии. |
protected void | layoutChildren(double contentX,
double contentY,
double contentWidth,
double contentHeight) | Вызывается во время прохода компоновки сцены. |
protected void | layoutInArea(Node child,
double areaX,
double areaY,
double areaWidth,
double areaHeight,
double areaBaselineOffset,
HPos halignment,
VPos valignment) | Утилитарный метод, который размещает дочерний элемент в области этого элемента skin, определенной areaX, areaY, areaWidth x areaHeight, со смещением базовой линии относительно этой области. |
protected void | layoutInArea(Node child,
double areaX,
double areaY,
double areaWidth,
double areaHeight,
double areaBaselineOffset,
Insets margin,
boolean fillWidth,
boolean fillHeight,
HPos halignment,
VPos valignment) | Утилитарный метод, который размещает дочерний элемент в области этого элемента skin, определенной areaX, areaY, areaWidth x areaHeight, со смещением базовой линии относительно этой области. |
protected void | layoutInArea(Node child,
double areaX,
double areaY,
double areaWidth,
double areaHeight,
double areaBaselineOffset,
Insets margin,
HPos halignment,
VPos valignment) | Утилитарный метод, который размещает дочерний элемент в области этого элемента skin, определенной areaX, areaY, areaWidth x areaHeight, со смещением базовой линии относительно этой области. |
protected void | positionInArea(Node child,
double areaX,
double areaY,
double areaWidth,
double areaHeight,
double areaBaselineOffset,
HPos halignment,
VPos valignment) | Утилитарный метод, который позиционирует дочерний элемент в области этого элемента skin, определенной areaX, areaY, areaWidth x areaHeight, со смещением базовой линии относительно этой области. |
protected void | positionInArea(Node child,
double areaX,
double areaY,
double areaWidth,
double areaHeight,
double areaBaselineOffset,
Insets margin,
HPos halignment,
VPos valignment) | Утилитарный метод, который позиционирует дочерний элемент в области этого элемента skin, определенной areaX, areaY, areaWidth x areaHeight, со смещением базовой линии относительно этой области. |
void | pseudoClassStateChanged(PseudoClass pseudoClass,
boolean active) | Используется для указания того, что псевдокласс этого узла изменился. |
protected Object | queryAccessibleAttribute(AccessibleAttribute attribute,
Object... parameters) | Этот метод вызывается технологией вспомогательных средств для запроса значения атрибута. |
protected void | registerChangeListener(ObservableValue<?> observable,
Consumer<ObservableValue<?>> operation) | Регистрирует операцию для выполнения, когда указанный observable отправляет событие изменения. |
protected void | registerInvalidationListener(Observable observable,
Consumer<Observable> operation) | Регистрирует операцию для выполнения, когда указанный observable отправляет событие недействительности. |
protected void | registerListChangeListener(ObservableList<?> observableList,
Consumer<ListChangeListener.Change<?>> operation) | Регистрирует операцию для выполнения, когда указанный observableList отправляет событие изменения списка. |
protected double | snappedBottomInset() | Утилитарный метод для получения нижнего отступа, который включает отступ отступов и границ. |
protected double | snappedLeftInset() | Утилитарный метод для получения левого отступа, который включает отступ отступов и границ. |
protected double | snappedRightInset() | Утилитарный метод для получения правого отступа, который включает отступ отступов и границ. |
protected double | snappedTopInset() | Утилитарный метод для получения верхнего отступа, который включает отступ отступов и границ. |
protected double | snapPosition(double value) |
Устарело. |
protected double | snapPositionX(double value) | Удобный метод для доступа к методу snapPositionX() в элементе skin. |
protected double | snapPositionY(double value) | Удобный метод для доступа к методу snapPositionY() в элементе skin. |
protected double | snapSize(double value) |
Устарело. заменено на snapSizeX() и snapSizeY()
|
protected double | snapSizeX(double value) | Удобный метод для доступа к методу snapSizeX() в элементе skin. |
protected double | snapSizeY(double value) | Удобный метод для доступа к методу snapSizeY() в элементе skin. |
protected double | snapSpace(double value) |
Устарело. заменено на snapSpaceX() и snapSpaceY()
|
protected double | snapSpaceX(double value) | Удобный метод для доступа к методу snapSpaceX() в компоненте с оболочкой. |
|---|---|---|
protected double | snapSpaceY(double value) | Удобный метод для доступа к методу snapSpaceY() в компоненте с оболочкой. |
protected Consumer<ObservableValue<?>> | unregisterChangeListeners(ObservableValue<?> observable) | Отменяет регистрацию всех операций, которые были зарегистрированы с помощью registerChangeListener(ObservableValue, Consumer) для данного observable. |
protected Consumer<Observable> | unregisterInvalidationListeners(Observable observable) | Отменяет регистрацию всех операций, которые были зарегистрированы с помощью registerInvalidationListener(Observable, Consumer) для данного observable. |
protected Consumer<ListChangeListener.Change<?>> | unregisterListChangeListeners(ObservableList<?> observableList) | Отменяет регистрацию всех операций, которые были зарегистрированы с помощью registerListChangeListener(ObservableList, Consumer) для данного observableList. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Методы, объявленные в интерфейсе javafx.scene.control.Skin
dispose, getNode, getSkinnable
Подробное описание конструкторов
SkinBase
protected SkinBase(C control)
- Параметры:
-
control- Элемент управления, к которому должен быть прикреплён этот Skin.
Подробное описание методов
getChildren
public final ObservableList<Node> getChildren()
- Возвращает:
- дочерние элементы Skin
layoutChildren
protected void layoutChildren(double contentX, double contentY, double contentWidth, double contentHeight)
- Параметры:
-
contentX- позиция по оси X -
contentY- позиция по оси Y -
contentWidth- ширина -
contentHeight- высота
consumeMouseEvents
protected final void consumeMouseEvents(boolean value)
- Параметры:
-
value- флаг потребления событий мыши
registerChangeListener
protected final void registerChangeListener(ObservableValue<?> observable, Consumer<ObservableValue<?>> operation)
observable отправляет событие изменения. Ничего не делает, если либо observable, либо operation являются null. Если на одном observable зарегистрированы несколько операций, они будут выполняться в том порядке, в котором были зарегистрированы.- Параметры:
-
observable- observable, за которым нужно наблюдать для событий изменения, может бытьnull -
operation- операция для выполнения, когда observable отправляет событие изменения, может бытьnull - С:
- 9
unregisterChangeListeners
protected final Consumer<ObservableValue<?>> unregisterChangeListeners(ObservableValue<?> observable)
registerChangeListener(ObservableValue, Consumer) для данного observable. Ничего не делает, если observable является null.- Параметры:
-
observable- observable, из которого должны быть удалены зарегистрированные операции, может бытьnull - Возвращает:
- составной consumer, представляющий все ранее зарегистрированные операции, или
null, если ни одна не была зарегистрирована или observable являетсяnull - С:
- 9
registerInvalidationListener
protected final void registerInvalidationListener(Observable observable, Consumer<Observable> operation)
observable отправляет событие инвалидации. Ничего не делает, если либо observable, либо operation являются null. Если на одном observable зарегистрированы несколько операций, они будут выполняться в том порядке, в котором были зарегистрированы.- Параметры:
-
observable- observable, за которым нужно наблюдать для событий инвалидации, может бытьnull -
operation- операция для выполнения, когда observable отправляет событие инвалидации, может бытьnull - С:
- 17
unregisterInvalidationListeners
protected final Consumer<Observable> unregisterInvalidationListeners(Observable observable)
registerInvalidationListener(Observable, Consumer) для данного observable. Ничего не делает, если observable является null.- Параметры:
-
observable- observable, из которого должны быть удалены зарегистрированные операции, может бытьnull - Возвращает:
- составной consumer, представляющий все ранее зарегистрированные операции, или
null, если ни одна не была зарегистрирована или observable являетсяnull - С:
- 17
registerListChangeListener
protected final void registerListChangeListener(ObservableList<?> observableList, Consumer<ListChangeListener.Change<?>> operation)
observableList отправляет событие изменения списка. Ничего не делает, если либо observableList, либо operation являются null. Если на одном observable list зарегистрированы несколько операций, они будут выполняться в том порядке, в котором были зарегистрированы.- Параметры:
-
observableList- observableList, за которым нужно наблюдать для событий изменения списка, может бытьnull -
operation- операция для выполнения, когда observableList отправляет событие изменения списка, может бытьnull - С:
- 17
unregisterListChangeListeners
protected final Consumer<ListChangeListener.Change<?>> unregisterListChangeListeners(ObservableList<?> observableList)
registerListChangeListener(ObservableList, Consumer) для данного observableList. Ничего не делает, если observableList является null.- Параметры:
-
observableList- observableList, из которого должны быть удалены зарегистрированные операции, может бытьnull - Возвращает:
- составной consumer, представляющий все ранее зарегистрированные операции, или
null, если ни одна не была зарегистрирована или observableList являетсяnull - С:
- 17
computeMinWidth
protected double computeMinWidth(double height, double topInset, double rightInset, double bottomInset, double leftInset)
- Параметры:
-
height- Высота Skin, в случае, если это значение может диктовать минимальную ширину. -
topInset- отступ сверху в пикселях -
rightInset- отступ справа в пикселях -
bottomInset- отступ снизу в пикселях -
leftInset- отступ слева в пикселях - Возвращает:
- Вещественное число, представляющее минимальную ширину этого Skin.
computeMinHeight
protected double computeMinHeight(double width, double topInset, double rightInset, double bottomInset, double leftInset)
- Параметры:
-
width- Ширина Skin, в случае, если это значение может диктовать минимальную высоту. -
topInset- отступ сверху в пикселях -
rightInset- отступ справа в пикселях -
bottomInset- отступ снизу в пикселях -
leftInset- отступ слева в пикселях - Возвращает:
- Вещественное число, представляющее минимальную высоту этого Skin.
computeMaxWidth
protected double computeMaxWidth(double height, double topInset, double rightInset, double bottomInset, double leftInset)
- Параметры:
-
height- Высота Skin, в случае, если это значение может диктовать максимальную ширину. -
topInset- отступ сверху в пикселях -
rightInset- отступ справа в пикселях -
bottomInset- отступ снизу в пикселях -
leftInset- отступ слева в пикселях - Возвращает:
- Вещественное число, представляющее максимальную ширину этого Skin.
computeMaxHeight
protected double computeMaxHeight(double width, double topInset, double rightInset, double bottomInset, double leftInset)
- Параметры:
-
width- Ширина Skin, в случае, если это значение может диктовать максимальную высоту. -
topInset- отступ сверху в пикселях -
rightInset- отступ справа в пикселях -
bottomInset- отступ снизу в пикселях -
leftInset- отступ слева в пикселях - Возвращает:
- Вещественное число, представляющее максимальную высоту этого Skin.
computePrefWidth
protected double computePrefWidth(double height, double topInset, double rightInset, double bottomInset, double leftInset)
SkinBase. По умолчанию эта ширина рассчитывается как ширина области, занимаемой его управляемыми дочерними элементами, когда они расположены в своих текущих позициях со своими предпочтительными ширинами.- Параметры:
-
height- высота, которая должна быть использована, если предпочтительная ширина зависит от неё -
topInset- отступ сверху в пикселях -
rightInset- отступ справа в пикселях -
bottomInset- отступ снизу в пикселях -
leftInset- отступ слева в пикселях - Возвращает:
- вычисленная предпочтительная ширина
computePrefHeight
protected double computePrefHeight(double width, double topInset, double rightInset, double bottomInset, double leftInset)
SkinBase. По умолчанию эта высота рассчитывается как высота области, занимаемой его управляемыми дочерними элементами, когда они расположены в своих текущих позициях со своими предпочтительными высотами.- Параметры:
-
width- ширина, которая должна быть использована, если предпочтительная высота зависит от неё -
topInset- отступ сверху в пикселях -
rightInset- отступ справа в пикселях -
bottomInset- отступ снизу в пикселях -
leftInset- отступ слева в пикселях - Возвращает:
- вычисленная предпочтительная высота
computeBaselineOffset
protected double computeBaselineOffset(double topInset, double rightInset, double bottomInset, double leftInset)
Node.getBaselineOffset().- Parameters:
-
topInset- отступ по вертикали, привязанный к пикселям -
rightInset- отступ по горизонтали, привязанный к пикселям -
bottomInset- отступ снизу, привязанный к пикселям -
leftInset- отступ слева, привязанный к пикселям - Returns:
- смещение базовой линии
snappedTopInset
protected double snappedTopInset()
- Returns:
- Округлённые вверх отступы сверху
snappedBottomInset
protected double snappedBottomInset()
- Returns:
- Округлённые вверх отступы снизу
snappedLeftInset
protected double snappedLeftInset()
- Returns:
- Округлённые вверх отступы слева
snappedRightInset
protected double snappedRightInset()
- Returns:
- Округлённые вверх отступы справа
snapSpace
@Deprecated(since="9") protected double snapSpace(double value)
snapSpaceX() и snapSpaceY()
getSkinnable().isSnapToPixel() равно false, этот метод возвращает то же значение. В противном случае он пытается вернуть значение, округлённое до ближайшего пикселя, но так как нет указания, является ли значение вертикальной или горизонтальной мерой, то оно может быть привязано к неправильной метрике размера пикселей на экранах с разными горизонтальными и вертикальными масштабами.- Parameters:
-
value- значение отступа для привязки - Returns:
- значение, округлённое до ближайшего пикселя
snapSpaceX
protected double snapSpaceX(double value)
snapSpaceX() в skinnable. Он эквивалентен вызову getSkinnable().snapSpaceX(value).- Parameters:
-
value- значение отступа для привязки - Returns:
- значение, округлённое до ближайшего пикселя
- Since:
- 9
- See Also:
Region.snapSpaceX(double)
snapSpaceY
protected double snapSpaceY(double value)
snapSpaceY() в skinnable. Он эквивалентен вызову getSkinnable().snapSpaceY(value).- Parameters:
-
value- значение отступа для привязки - Returns:
- значение, округлённое до ближайшего пикселя
- Since:
- 9
- See Also:
Region.snapSpaceY(double)
snapSize
@Deprecated(since="9") protected double snapSize(double value)
snapSizeX() и snapSizeY()
getSkinnable().isSnapToPixel() равно false, этот метод возвращает то же значение. В противном случае он пытается вернуть значение, округленное вверх до ближайшего пикселя, но так как нет указания, является ли значение вертикальной или горизонтальной мерой, то оно может быть привязано к неправильной метрике размера пикселей на экранах с разными горизонтальными и вертикальными масштабами.- Parameters:
-
value- значение размера для привязки - Returns:
- значение, округленное вверх до ближайшего пикселя
snapSizeX
protected double snapSizeX(double value)
snapSizeX() в skinnable. Он эквивалентен вызову getSkinnable().snapSizeX(value).- Parameters:
-
value- значение размера для привязки - Returns:
- значение, округленное вверх до ближайшего пикселя
- Since:
- 9
- See Also:
Region.snapSizeX(double)
snapSizeY
protected double snapSizeY(double value)
snapSizeY() в skinnable. Он эквивалентен вызову getSkinnable().snapSizeY(value).- Parameters:
-
value- значение размера для привязки - Returns:
- значение, округленное вверх до ближайшего пикселя
- Since:
- 9
- See Also:
Region.snapSizeY(double)
snapPosition
@Deprecated(since="9") protected double snapPosition(double value)
snapPositionX() и snapPositionY()
getSkinnable().isSnapToPixel() равно false, этот метод возвращает то же значение. В противном случае он пытается вернуть значение, округлённое до ближайшего пикселя, но так как нет указания, является ли значение вертикальной или горизонтальной мерой, то оно может быть привязано к неправильной метрике размера пикселей на экранах с разными горизонтальными и вертикальными масштабами.- Parameters:
-
value- значение позиции для привязки - Returns:
- значение, округлённое до ближайшего пикселя
snapPositionX
protected double snapPositionX(double value)
snapPositionX() в skinnable. Он эквивалентен вызову getSkinnable().snapPositionX(value).- Parameters:
-
value- значение позиции для привязки - Returns:
- значение, округлённое до ближайшего пикселя
- Since:
- 9
- See Also:
Region.snapPositionX(double)
snapPositionY
protected double snapPositionY(double value)
snapPositionY() в skinnable. Он эквивалентен вызову getSkinnable().snapPositionY(value).- Parameters:
-
value- значение позиции для привязки - Returns:
- значение, округлённое до ближайшего пикселя
- Since:
- 9
- See Also:
Region.snapPositionY(double)
positionInArea
protected void positionInArea(Node child, double areaX, double areaY, double areaWidth, double areaHeight, double areaBaselineOffset, HPos halignment, VPos valignment)
areaX, areaY, areaWidth x areaHeight, со смещением базовой линии относительно этой области. Данная функция не изменяет размер узла и использует ширину и высоту области размещения узла для определения, как его следует позиционировать в области.
Если вертикальное выравнивание равно VPos.BASELINE, то узел будет позиционирован так, чтобы его собственная базовая линия совпадала с переданным baselineOffset, в противном случае параметр базовой линии игнорируется.
Если snapToPixel равно true для этого skin, то значения x/y будут округляться до ближайших пиксельных границ.
- Parameters:
-
child- дочерний элемент, позиционируемый внутри этого skin -
areaX- горизонтальный отступ области размещения относительно этого skin -
areaY- вертикальный отступ области размещения относительно этого skin -
areaWidth- ширина области размещения -
areaHeight- высота области размещения -
areaBaselineOffset- смещение базовой линии, используемое, если VPos равен BASELINE -
halignment- горизонтальное выравнивание дочернего элемента внутри области -
valignment- вертикальное выравнивание дочернего элемента внутри области
positionInArea
protected void positionInArea(Node child, double areaX, double areaY, double areaWidth, double areaHeight, double areaBaselineOffset, Insets margin, HPos halignment, VPos valignment)
areaX, areaY, areaWidth x areaHeight, с отступом базовой линии относительно этой области. Эта функция не изменяет размер узла и использует ширину и высоту границ макета узла для определения того, как его следует позиционировать в области.
Если вертикальное выравнивание равно VPos.BASELINE, то узел будет позиционирован таким образом, чтобы его собственная базовая линия выравнивалась с переданным baselineOffset, в противном случае параметр базовой линии игнорируется.
Если snapToPixel равно true для этой темы, то значения позиций x/y будут округлены до ближайших пиксельных границ.
Если margin не null, то это пространство будет выделено вокруг дочернего элемента в области макета. margin может быть null.
- Parameters:
-
child- дочерний элемент, позиционируемый в этой теме -
areaX- горизонтальный отступ области макета относительно этой темы -
areaY- вертикальный отступ области макета относительно этой темы -
areaWidth- ширина области макета -
areaHeight- высота области макета -
areaBaselineOffset- отступ базовой линии, используемый, если VPos равен BASELINE -
margin- отступ (margin) для выделения пространства вокруг дочернего элемента -
halignment- горизонтальное выравнивание дочернего элемента в области -
valignment- вертикальное выравнивание дочернего элемента в области - Since:
- JavaFX 8.0
layoutInArea
protected void layoutInArea(Node child, double areaX, double areaY, double areaWidth, double areaHeight, double areaBaselineOffset, HPos halignment, VPos valignment)
areaX, areaY, areaWidth x areaHeight, с отступом базовой линии относительно этой области. Если дочерний элемент является изменяемым, этот метод изменит его размер, чтобы заполнить указанную область, если только максимальный размер узла не помешает этому. Если предпочтительный максимальный размер узла меньше размера области, используется максимальный размер. Если максимальный размер узла больше размера области, то узел будет изменен в размер, соответствующий области, если только минимальный размер не помешает этому.
Если у дочернего элемента есть не null contentBias, то этот метод будет использовать его при изменении размера дочернего элемента. Если contentBias горизонтальный, то он сначала установит его ширину на ширину области (вплоть до максимальной ширины дочернего элемента), а затем передаст это значение для вычисления высоты дочернего элемента. Если contentBias дочернего элемента вертикальный, то он сначала установит его высоту на высоту области (вплоть до максимальной высоты дочернего элемента), а затем передаст эту высоту для вычисления ширины дочернего элемента. Если contentBias дочернего элемента null, то его ширина и высота не зависят друг от друга.
Если дочерний элемент не изменяем (Shape, Group и т.д.), то он будет только позиционирован, но не изменен в размере.
Если размер дочернего элемента отличается от размера области (либо потому, что он не изменяем, либо его параметры размера помешали этому), то эта функция выровняет узел относительно области, используя горизонтальные и вертикальные значения выравнивания. Если valignment равен VPos.BASELINE, то базовая линия узла будет выровнена с параметром смещения базовой линии области, иначе параметр базовой линии игнорируется.
Если snapToPixel равно true для этой темы, то полученные значения x, y будут округлены до ближайших пиксельных границ, а значения ширины/высоты будут увеличены до следующей пиксельной границы.
- Parameters:
-
child- дочерний элемент, позиционируемый в этой теме -
areaX- горизонтальный отступ области макета относительно этой темы -
areaY- вертикальный отступ области макета относительно этой темы -
areaWidth- ширина области макета -
areaHeight- высота области макета -
areaBaselineOffset- отступ базовой линии, используемый, если VPos равен BASELINE -
halignment- горизонтальное выравнивание дочернего элемента в области -
valignment- вертикальное выравнивание дочернего элемента в области
layoutInArea
protected void layoutInArea(Node child, double areaX, double areaY, double areaWidth, double areaHeight, double areaBaselineOffset, Insets margin, HPos halignment, VPos valignment)
areaX, areaY, areaWidth x areaHeight, с отступом базовой линии относительно этой области. Если дочерний элемент изменяем, этот метод изменит его размер, чтобы заполнить указанную область, если только максимальный размер узла не помешает этому. Если предпочтительный максимальный размер узла меньше размера области, используется максимальный размер. Если максимальный размер узла больше размера области, то узел будет изменен в размер, соответствующий области, если только минимальный размер не помешает этому.
Если у дочернего элемента есть не null contentBias, то этот метод будет использовать его при изменении размера дочернего элемента. Если contentBias горизонтальный, то он сначала установит его ширину на ширину области (вплоть до максимальной ширины дочернего элемента), а затем передаст это значение для вычисления высоты дочернего элемента. Если contentBias дочернего элемента вертикальный, то он сначала установит его высоту на высоту области (вплоть до максимальной высоты дочернего элемента), а затем передаст эту высоту для вычисления ширины дочернего элемента. Если contentBias дочернего элемента null, то его ширина и высота не зависят друг от друга.
Если дочерний элемент не изменяем (Shape, Group и т.д.), то он будет только позиционирован, но не изменен в размере.
Если размер дочернего элемента отличается от размера области (либо потому, что он не изменяем, либо его параметры размера помешали этому), то эта функция выровняет узел относительно области, используя горизонтальные и вертикальные значения выравнивания. Если valignment равен VPos.BASELINE, то базовая линия узла будет выровнена с параметром смещения базовой линии области, иначе параметр базовой линии игнорируется.
Если margin не null, то это пространство будет выделено вокруг дочернего элемента в области макета. margin может быть null.
Если snapToPixel равно true для этой темы, то полученные значения x, y будут округлены до ближайших пиксельных границ, а значения ширины/высоты будут увеличены до следующей пиксельной границы.
- Parameters:
-
child- дочерний элемент, позиционируемый в этой теме -
areaX- горизонтальный отступ области макета относительно этой темы -
areaY- вертикальный отступ области макета относительно этой темы -
areaWidth- ширина области макета -
areaHeight- высота области макета -
areaBaselineOffset- отступ базовой линии, используемый, если VPos равен BASELINE -
margin- отступ (margin) для выделения пространства вокруг дочернего элемента -
halignment- горизонтальное выравнивание дочернего элемента в области -
valignment- вертикальное выравнивание дочернего элемента в области
layoutInArea
protected void layoutInArea(Node child, double areaX, double areaY, double areaWidth, double areaHeight, double areaBaselineOffset, Insets margin, boolean fillWidth, boolean fillHeight, HPos halignment, VPos valignment)
areaX, areaY, areaWidth x areaHeight, с отступом базовой линии относительно этой области. Если дочерний элемент изменяем, этот метод будет использовать fillWidth и fillHeight, чтобы определить, нужно ли изменять его размер, чтобы заполнить область, или сохранить дочерний элемент в его предпочтительных размерах. Если fillWidth/fillHeight равны true, то этот метод будет изменять размер дочернего элемента только до максимальных размеров. Если предпочтительный максимальный размер узла меньше размера области, используется максимальный размер. Если максимальный размер узла больше размера области, то узел будет изменен в размер, соответствующий области, если только минимальный размер не помешает этому.
Если у дочернего элемента есть не null contentBias, то этот метод будет использовать его при изменении размера дочернего элемента. Если contentBias горизонтальный, то он сначала установит его ширину, а затем передаст это значение для вычисления высоты дочернего элемента. Если contentBias дочернего элемента вертикальный, то он сначала установит его высоту, а затем передаст это значение для вычисления ширины дочернего элемента. Если contentBias дочернего элемента null, то его ширина и высота не зависят друг от друга.
Если дочерний элемент не изменяем (Shape, Group и т.д.), то он будет только позиционирован, но не изменен в размере.
Если размер дочернего элемента отличается от размера области (либо потому, что он не изменяем, либо его параметры размера помешали этому), то эта функция выровняет узел относительно области, используя горизонтальные и вертикальные значения выравнивания. Если valignment равен VPos.BASELINE, то базовая линия узла будет выровнена с параметром смещения базовой линии области, иначе параметр базовой линии игнорируется.
Если margin не null, то это пространство будет выделено вокруг дочернего элемента в области макета. margin может быть null.
Если snapToPixel равно true для этой темы, то полученные значения x, y будут округлены до ближайших пиксельных границ, а значения ширины/высоты будут увеличены до следующей пиксельной границы.
- Parameters:
-
child- дочерний элемент, позиционируемый в этой теме -
areaX- горизонтальный отступ области макета относительно этой темы -
areaY- вертикальный отступ области макета относительно этой темы -
areaWidth- ширина области макета -
areaHeight- высота области макета -
areaBaselineOffset- отступ базовой линии, используемый, если VPos равен BASELINE -
margin- отступ (margin) для выделения пространства вокруг дочернего элемента -
fillWidth- необходимо ли изменять размер дочернего элемента по ширине для заполнения области или сохранить его предпочтительную ширину -
fillHeight- необходимо ли изменять размер дочернего элемента по высоте для заполнения области или сохранить его предпочтительную высоту -
halignment- горизонтальное выравнивание дочернего элемента в области -
valignment- вертикальное выравнивание дочернего элемента в области
getClassCssMetaData
public static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()
- Возвращает:
- CssMetaData, связанный с этим классом, который может включать CssMetaData его суперклассов
getCssMetaData
public List<CssMetaData<? extends Styleable,?>> getCssMetaData()
Node.getClassCssMetaData(), чтобы CssMetaData узла можно было получить без рефлексии.- Возвращает:
- CssMetaData, связанный с этим узлом, который может включать CssMetaData его суперклассов.
pseudoClassStateChanged
public final void pseudoClassStateChanged(PseudoClass pseudoClass, boolean active)
invalidated свойства, используемого в качестве псевдокласса. Например:
private static final PseudoClass MY_PSEUDO_CLASS_STATE = PseudoClass.getPseudoClass("my-state");
BooleanProperty myPseudoClassState = new BooleanPropertyBase(false) {
@Override public void invalidated() {
pseudoClassStateChanged(MY_PSEUDO_CLASS_STATE, get());
}
@Override public Object getBean() {
return MyControl.this;
}
@Override public String getName() {
return "myPseudoClassState";
}
};
- Параметры:
-
pseudoClass— псевдокласс, изменивший состояние -
active— активен ли псевдокласс - С:
- JavaFX 8.0
- См. также:
Node.pseudoClassStateChanged(javafx.css.PseudoClass, boolean)
queryAccessibleAttribute
protected Object queryAccessibleAttribute(AccessibleAttribute attribute, Object... parameters)
Этот метод обычно переопределяется подклассами для реализации атрибутов, необходимых для определённой роли.
Если определённый атрибут не обрабатывается, должна быть вызвана реализация суперкласса.
- Параметры:
-
attribute— запрашиваемый атрибут -
parameters— необязательный список параметров - Возвращает:
- значение запрашиваемого атрибута
- С:
- JavaFX 8u40
- См. также:
-
AccessibleAttribute,Node.queryAccessibleAttribute(javafx.scene.AccessibleAttribute, java.lang.Object...)
executeAccessibleAction
protected void executeAccessibleAction(AccessibleAction action, Object... parameters)
Этот метод обычно переопределяется подклассами для реализации действий, необходимых для определённой роли.
Если определённое действие не обрабатывается, должна быть вызвана реализация суперкласса.
- Параметры:
-
action— действие для выполнения -
parameters— необязательный список параметров - С:
- JavaFX 8u40
- См. также:
-
AccessibleAction,Node.executeAccessibleAction(javafx.scene.AccessibleAction, java.lang.Object...)
© 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.
snapPositionX()иsnapPositionY()