FGX.CollectionView.TfgCustomCollectionView: различия между версиями
Admin (обсуждение | вклад) (summary) |
Admin (обсуждение | вклад) (summary) |
||
Строка 21: | Строка 21: | ||
| <syntaxhighlight lang="Delphi">constructor</syntaxhighlight> || <code>Create(AOwner: [[TComponent]])</code> | | <syntaxhighlight lang="Delphi">constructor</syntaxhighlight> || <code>Create(AOwner: [[TComponent]])</code> | ||
<span style="color:gray">Описание отсутствует.</span> | <span style="color:gray">Описание отсутствует.</span> | ||
+ | |} | ||
+ | |||
+ | == Методы == | ||
+ | |||
+ | {| class="wikitable sortable" | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">ReloadItems()</code> | ||
+ | |||
+ | <p>Перезагружает элементы коллекции. Форсирует перезагрузку всех элементов списка.</p><div class="info">Потокобезопасный метод. Можно вызывать не из главного потока. Этот метод автоматически завершает процесс <i>PullToRefresh</i> , если он был запущен.</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">ReloadItem(const AItemIndex: [[Integer]])</code> | ||
+ | |||
+ | <p>Перезагружает элемент коллекции по указанному индексу.</p><div class="info">Потокобезопасный метод. Можно вызывать не из главного потока.</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">GetItemId(const AItemIndex: [[Integer]]): [[Int64]]</code> | ||
+ | <p>Возвращает идентификатор элемента по его порядковому индексу. Для этого использует данные, полученные в результате работы обработчика события <i>OnGetItemId</i> . По умолчанию использует порядковый иднекс элемента.</p> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">FindItemIndexById(const AItemId: [[Int64]]; out AItemIndex: [[Integer]]): [[Boolean]]</code> | ||
+ | |||
+ | <p>Поиск порядкового индекса элемента по его уникальному идентификатору. Задание уникальных идентификаторо элементов осуществляется через событие <i>OnGetItemId</i> .</p><div class="info">Сложность поиска O(n). Если индекс не найден, то <i>AItemIndex</i> будет содержать -1.</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">FindItemIndexByPoint(const APoint: [[TPointF]]; out AItemIndex: [[Integer]]): [[Boolean]]</code> | ||
+ | |||
+ | <p>Поиск порядкового индекса элемента по координатам точки в CollectionView, попадающая в один из видимых элементов. Работает только для видимых элементов с индексами в диапазоне <i>GetFirstVisibleItemIndex</i> и <i>GetLastVisibleItemIndex</i> . <i>APoint</i> указывается в системе координат контрола с учетом смещения прокрутки.</p><div class="info">Если индекс не найден, то <i>AItemIndex</i> будет содержать -1.</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">FindItemIndexByObject(const AObject: [[TObject]]; out AItemIndex: [[Integer]]): [[Boolean]]</code> | ||
+ | |||
+ | <p>Поиск порядкового индекса элемента по объекту, который принадлежит стилю элемента (по цепочке родителей можно выйти к стилю элемента).</p><div class="info">Если индекс не найден, то <i>AItemIndex</i> будет содержать -1.</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">FindItemWrapperByIndex(const AItemIndex: [[Integer]]; out AItemWrapper: [[FGX.CollectionView.TfgItemWrapper|TfgItemWrapper]]): [[Boolean]]</code> | ||
+ | |||
+ | <p>Ищет <i>TfgItemWrapper</i> для работы с контролом элемента по индексу. Если элемента по указанному индексу нет, то в <i>AItemWrapper</i> будет nil.</p><div class="info">Работает только для индексов в диапазоне <i>GetFirstVisibleItemIndex</i> и <i>GetLastVisibleItemIndex</i> . Сложность O(1).</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">FindItemControlByIndex(const AItemIndex: [[Integer]]; out AControl: [[FGX.Control.TfgControl|TfgControl]]): [[Boolean]]</code> | ||
+ | |||
+ | <p>Ищет контрол <i>TfgControl</i> элемента по индексу. Если элемента по указанному индексу нет, то в <i>AControl</i> будет nil.</p><div class="info">Работает только для индексов в диапазоне <i>GetFirstVisibleItemIndex</i> и <i>GetLastVisibleItemIndex</i> . Сложность O(1).</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">GetFirstVisibleItemIndex(): [[Integer]]</code> | ||
+ | |||
+ | <p>Возвращает индекс первого видимого элемента на экране.</p><div class="info">Если список пуст, то вернет -1.</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">GetLastVisibleItemIndex(): [[Integer]]</code> | ||
+ | |||
+ | <p>Возвращает индекс последнего видимого элемента на экране.</p><div class="info">Если список пуст, то вернет -1.</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">CreateStyle(): [[FGX.CollectionView.TfgCollectionViewStyle|TfgCollectionViewStyle]]</code> | ||
+ | <p>Создает новый пустой стиль с уникальным именем <i>TfgCollectionViewStyle.TfgStyleName</i> .</p> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">AddStyle(const AStyle: [[FGX.CollectionView.TfgCollectionViewStyle|TfgCollectionViewStyle]])</code> | ||
+ | <p>Добавляет стиль в список стилей контрола.</p> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">GetStyle(const AStyleName: [[string]]): [[FGX.CollectionView.TfgCollectionViewStyle|TfgCollectionViewStyle]]</code> | ||
+ | |||
+ | <p>Возвращает стиль по его имени.</p><div class="info">Если стиль не найден, то вернет nil.</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">GetStyleIndex(const AStyleName: [[string]]): [[Integer]]</code> | ||
+ | |||
+ | <p>Возвращает индекс стиля по его имени. Первый стиль имеет индекс 0.</p><div class="info">Если стиль не найден, то вернет -1.</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">GetStyleForItemIndex(const AItemIndex: [[Integer]]): [[FGX.CollectionView.TfgCollectionViewStyle|TfgCollectionViewStyle]]</code> | ||
+ | |||
+ | <p>Возвращает стиль элемента по указанному индексу элемента.</p><div class="info">Если стиль не найден, или стилей нет, то вернет nil.</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">ScrollToItem(const AItemIndex: [[Integer]]; const AWithAnimation: [[Boolean]])</code> | ||
+ | <span style="color:gray">Описание отсутствует.</span> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">ResetSelection()</code> | ||
+ | <p>Сбрасывает текущее выделение всех выделенных элементов.</p> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">ResetSelection(const AItemIndex: [[Integer]])</code> | ||
+ | <p>Сбрасывает текущее выделение элемента с указанным индексом.</p> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">SelectItem(const AItemIndex: [[Integer]])</code> | ||
+ | |||
+ | <p>Выделяет элемент с указанным индексом.</p><div class="info">Работает только, если стиль элемента поддерживает выделение <i>TfgCollectionViewStyle.Selectable</i> и стоит режим выделения отличный от none <i>SelectionMode != TfgCollectionViewSelectionMode.None</i> .</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">SelectAllItems()</code> | ||
+ | |||
+ | <p>Выделяет все элементы списка.</p><div class="info">Работает только, если стиль элемента поддерживает выделение <i>TfgCollectionViewStyle.Selectable</i> и стоит режим выделения MultiSelect <i>SelectionMode = TfgCollectionViewSelectionMode.MultiSelect</i> .</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">BeginPullToRefresh()</code> | ||
+ | |||
+ | <p>Запускает программным способом процесс обновления данных с одновременным отображением индикатора загрузки. Разработчик должен выполнить/запустить процесс обновления данных и по окончании загрузки данных сообщить об этом контролу, вызвав <i>EndPullToRefresh</i> . Обратите внимание, что для визуального обновления данных, разработчику так же нужно воспользовать одним из методов обновления данных <i>ReloadItems</i> или <i>ReloadItem</i> .</p><div class="info">Если список уже находится в состоянии обновления <i>IsPullToRefreshActive = True</i> , то метод не будет запускать новый процесс обновления.</div> | ||
+ | |- | ||
+ | | <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">EndPullToRefresh()</code> | ||
+ | |||
+ | <p>Заканчивает процесс обновления данных, начатый пользователем. Это приводит к скрытию индикатора загрузки и загрузки данных в список. Обратите внимание, что для визуального обновления данных, разработчику так же нужно воспользовать одним из методов обновления данных <i>ReloadItems</i> или <i>ReloadItem</i> .</p><div class="info">Потокобезопасный метод. Можно вызывать не из главного потока.</div> | ||
|} | |} |
Версия 00:39, 13 июня 2019
Delphi
TfgCustomCollectionView = class (TfgControl, IFGXContainer)
TComponent -> TfgControl -> TfgCustomCollectionView
Прямые наследники: TfgCollectionView
Описание
Описание отсутствует.
Конструкторы
constructor
|
Create(AOwner: TComponent)
Описание отсутствует. |
Методы
procedure
|
ReloadItems()
Перезагружает элементы коллекции. Форсирует перезагрузку всех элементов списка. Потокобезопасный метод. Можно вызывать не из главного потока. Этот метод автоматически завершает процесс PullToRefresh , если он был запущен.
|
procedure
|
ReloadItem(const AItemIndex: Integer)
Перезагружает элемент коллекции по указанному индексу. Потокобезопасный метод. Можно вызывать не из главного потока.
|
function
|
GetItemId(const AItemIndex: Integer): Int64
Возвращает идентификатор элемента по его порядковому индексу. Для этого использует данные, полученные в результате работы обработчика события OnGetItemId . По умолчанию использует порядковый иднекс элемента. |
function
|
FindItemIndexById(const AItemId: Int64; out AItemIndex: Integer): Boolean
Поиск порядкового индекса элемента по его уникальному идентификатору. Задание уникальных идентификаторо элементов осуществляется через событие OnGetItemId . Сложность поиска O(n). Если индекс не найден, то AItemIndex будет содержать -1.
|
function
|
FindItemIndexByPoint(const APoint: TPointF; out AItemIndex: Integer): Boolean
Поиск порядкового индекса элемента по координатам точки в CollectionView, попадающая в один из видимых элементов. Работает только для видимых элементов с индексами в диапазоне GetFirstVisibleItemIndex и GetLastVisibleItemIndex . APoint указывается в системе координат контрола с учетом смещения прокрутки. Если индекс не найден, то AItemIndex будет содержать -1.
|
function
|
FindItemIndexByObject(const AObject: TObject; out AItemIndex: Integer): Boolean
Поиск порядкового индекса элемента по объекту, который принадлежит стилю элемента (по цепочке родителей можно выйти к стилю элемента). Если индекс не найден, то AItemIndex будет содержать -1.
|
function
|
FindItemWrapperByIndex(const AItemIndex: Integer; out AItemWrapper: TfgItemWrapper): Boolean
Ищет TfgItemWrapper для работы с контролом элемента по индексу. Если элемента по указанному индексу нет, то в AItemWrapper будет nil. Работает только для индексов в диапазоне GetFirstVisibleItemIndex и GetLastVisibleItemIndex . Сложность O(1).
|
function
|
FindItemControlByIndex(const AItemIndex: Integer; out AControl: TfgControl): Boolean
Ищет контрол TfgControl элемента по индексу. Если элемента по указанному индексу нет, то в AControl будет nil. Работает только для индексов в диапазоне GetFirstVisibleItemIndex и GetLastVisibleItemIndex . Сложность O(1).
|
function
|
GetFirstVisibleItemIndex(): Integer
Возвращает индекс первого видимого элемента на экране. Если список пуст, то вернет -1.
|
function
|
GetLastVisibleItemIndex(): Integer
Возвращает индекс последнего видимого элемента на экране. Если список пуст, то вернет -1.
|
function
|
CreateStyle(): TfgCollectionViewStyle
Создает новый пустой стиль с уникальным именем TfgCollectionViewStyle.TfgStyleName . |
procedure
|
AddStyle(const AStyle: TfgCollectionViewStyle)
Добавляет стиль в список стилей контрола. |
function
|
GetStyle(const AStyleName: string): TfgCollectionViewStyle
Возвращает стиль по его имени. Если стиль не найден, то вернет nil.
|
function
|
GetStyleIndex(const AStyleName: string): Integer
Возвращает индекс стиля по его имени. Первый стиль имеет индекс 0. Если стиль не найден, то вернет -1.
|
function
|
GetStyleForItemIndex(const AItemIndex: Integer): TfgCollectionViewStyle
Возвращает стиль элемента по указанному индексу элемента. Если стиль не найден, или стилей нет, то вернет nil.
|
procedure
|
ScrollToItem(const AItemIndex: Integer; const AWithAnimation: Boolean)
Описание отсутствует. |
procedure
|
ResetSelection()
Сбрасывает текущее выделение всех выделенных элементов. |
procedure
|
ResetSelection(const AItemIndex: Integer)
Сбрасывает текущее выделение элемента с указанным индексом. |
procedure
|
SelectItem(const AItemIndex: Integer)
Выделяет элемент с указанным индексом. Работает только, если стиль элемента поддерживает выделение TfgCollectionViewStyle.Selectable и стоит режим выделения отличный от none SelectionMode != TfgCollectionViewSelectionMode.None .
|
procedure
|
SelectAllItems()
Выделяет все элементы списка. Работает только, если стиль элемента поддерживает выделение TfgCollectionViewStyle.Selectable и стоит режим выделения MultiSelect SelectionMode = TfgCollectionViewSelectionMode.MultiSelect .
|
procedure
|
BeginPullToRefresh()
Запускает программным способом процесс обновления данных с одновременным отображением индикатора загрузки. Разработчик должен выполнить/запустить процесс обновления данных и по окончании загрузки данных сообщить об этом контролу, вызвав EndPullToRefresh . Обратите внимание, что для визуального обновления данных, разработчику так же нужно воспользовать одним из методов обновления данных ReloadItems или ReloadItem . Если список уже находится в состоянии обновления IsPullToRefreshActive = True , то метод не будет запускать новый процесс обновления.
|
procedure
|
EndPullToRefresh()
Заканчивает процесс обновления данных, начатый пользователем. Это приводит к скрытию индикатора загрузки и загрузки данных в список. Обратите внимание, что для визуального обновления данных, разработчику так же нужно воспользовать одним из методов обновления данных ReloadItems или ReloadItem . Потокобезопасный метод. Можно вызывать не из главного потока.
|