Класс VirtualContainerBase<C extends Control, I extends IndexedCell>
java.lang.Object
javafx.scene.control.SkinBase<C>
javafx.scene.control.skin.VirtualContainerBase<C, I>
- Все реализуемые интерфейсы:
Skin<C>
- Непосредственные известные подклассы:
-
ListViewSkin,TableViewSkinBase,TreeViewSkin
public abstract class VirtualContainerBase<C extends Control,I extends IndexedCell> extends SkinBase<C>
Родительский класс для управления скин-объектами, содержимое которых виртуализировано и может прокручиваться. Этот класс обрабатывает взаимодействие с классом VirtualFlow, который является основным классом, отвечающим за виртуализацию содержимого этого контейнера.
- С:
- 9
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
VirtualContainerBase |
Конструктор для вызова подклассами. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
protected VirtualFlow<I> |
createVirtualFlow() |
Создаёт виртуализированный контейнер, который обрабатывает расположение и прокрутку всех ячеек. |
void |
dispose() |
Вызывается, когда ранее установленный скин собирается быть удалён из связанного с ним элемента управления. |
protected abstract int |
getItemCount() |
Возвращает общее количество элементов в этом контейнере, включая те, которые в данный момент скрыты, так как находятся вне области видимости. |
protected final VirtualFlow<I> |
getVirtualFlow() |
Получить виртуализированный контейнер. |
protected final void |
markItemCountDirty() |
Вызовите этот метод, чтобы указать, что количество элементов должно быть обновлено на следующей итерации. |
protected abstract void |
updateItemCount() |
Этот метод вызывается, когда возможно, что количество элементов изменилось (например, |
Методы, объявленные в классе javafx.scene.control.SkinBase
computeBaselineOffset, computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, consumeMouseEvents, executeAccessibleAction, getChildren, getClassCssMetaData, getCssMetaData, getNode, getSkinnable, layoutChildren, layoutInArea, layoutInArea, layoutInArea, positionInArea, positionInArea, pseudoClassStateChanged, queryAccessibleAttribute, registerChangeListener, registerInvalidationListener, registerListChangeListener, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, unregisterChangeListeners, unregisterInvalidationListeners, unregisterListChangeListeners
Подробное описание конструкторов
VirtualContainerBase
public VirtualContainerBase(C control)
Конструктор для вызова подклассами.
- Параметры:
-
control- элемент управления
Подробное описание методов
getItemCount
protected abstract int getItemCount()
Возвращает общее количество элементов в этом контейнере, включая те, которые в данный момент скрыты, так как находятся вне области видимости.
- Возвращает:
- общее количество элементов в этом контейнере
updateItemCount
protected abstract void updateItemCount()
Этот метод вызывается, когда возможно, что количество элементов изменилось (например, произошла прокрутка, элемент управления изменил размер и т.д.). Этот метод должен пересчитать количество элементов и сохранить его для последующего использования методом
getItemCount().createVirtualFlow
protected VirtualFlow<I> createVirtualFlow()
Создаёт виртуализированный контейнер, который обрабатывает расположение и прокрутку всех ячеек. Это позволяет подклассам скинов предоставить собственную реализацию
VirtualFlow. Если не переопределён, этот метод создаёт экземпляр VirtualFlow по умолчанию.- Возвращает:
- новый созданный экземпляр VirtualFlow
- С:
- 10
dispose
public void dispose()
Вызывается, когда ранее установленный скин собирается быть удалён из связанного с ним элемента управления. Это позволяет скину выполнить очистку, например, удалить слушателей и привязки, и отменить любые изменения свойств элемента управления. После завершения этого метода
Skin.getSkinnable() и Skin.getNode() должны возвращать null. Вызов Skin.dispose() более одного раза не оказывает никакого влияния.
Переопределён для удаления EventHandler.
getVirtualFlow
protected final VirtualFlow<I> getVirtualFlow()
Получить виртуализированный контейнер. Подклассы могут вызвать этот метод, чтобы получить экземпляр VirtualFlow.
- Возвращает:
- виртуализированный контейнер
- С:
- 10
markItemCountDirty
protected final void markItemCountDirty()
Вызовите этот метод, чтобы указать, что количество элементов должно быть обновлено на следующей итерации.
© 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.