Grid#
- public class Grid extends AbstractView implements Clickable, KeyboardInput#
New in version 1.1.0: Добавлены методы получения некоторых свойств табличного представления. Добавлены методы получения строк, столбцов и ячеек. Поддержка мыши. Методы приведены в соответствие соглашению по именам.
Список (табличное представление) - отображает данные выборки в виде таблицы/грида (набора строк с упорядочиванием значений атрибутов согласно последовательности колонок таким образом, что значение конкретного атрибута конкретной записи отображается в области пересечения известной строки и известной колонки, называемой ячейкой).
Содержит в себе методы, позволяющие получить доступ к строкам и колонкам. Так же позволяет получить некоторые характеристики табличного представления (такие, как признак возможности редактирования). Кроме того, реализует базовое взаимодействие посредством симуляции действий пользователя с помощью манипулятора типа “Мышь”.
Каждая строка выборки, после фильтрации и сортировки, уникальным образом адресуется целым числом, называемым далее “порядковый номер”.
Получить строку по порядковому номеру можно методом
getRowByNumber(int)
.Получить порядковый номер выбранной строки можно методом
getSelectedRowNumber()
.Получить общее количество строк выборки можно методом
getTotalCount()
.
В каждый момент времени, на табличном представлении отображается некоторое подмножество строк. Такие строки далее называются “отображаемые строки”.
Получить смещение до первой отображаемой строки можно методом
getOffset()
Получить список отображенных строк можно методом
getRows()
Каждая отображаемая строка уникальным образом адресуется целым числом, называемым далее “порядковый индекс” (
getSelectedRowIndex()
).Получить строку по порядковому индексу можно методом
getRowByIndex(int)
.Получить порядковый индекс выбранной строки можно методом
getSelectedRowIndex()
.
Constructors#
Grid#
- protected Grid(Frame parent, WebElement webElement)#
Grid#
- protected Grid(BrowserContext browserContext, WebElement webElement)#
Methods#
click#
- public void click()#
Игнорируем клик в табличное представление. Интересуют только клики в строку или ячейку.
doubleClick#
- public void doubleClick()#
Игнорируем дабл-клики в табличное представление. Интересуют только даблклики в строку или ячейку.
findTableContainerElement#
- protected WebElement findTableContainerElement(WebDriverHelper driverHelper)#
getCell#
- public Cell getCell(int rowIndex, String colAttributeName)#
Получить ячейку табличного представления по порядковому индексу строки и названию атрибута.
- Parameters
rowIndex – порядковый индекс строки табличного представления
colAttributeName – название атрибута
- Throws
ElementNotFoundException
– если не удалось получить строку таблицы
- Returns
ячейка
getCell#
- public Cell getCell(int rowIndex, int colIndex)#
Получить ячейку табличного представления по порядковым индексам строки и столбца
- Parameters
rowIndex – порядковый индекс строки
colIndex – порядковый индекс столбца
- Throws
ElementNotFoundException
– если не удалось получить строку таблицы
- Returns
ячейка
getClickableWebElement#
- public WebElement getClickableWebElement()#
Так как табличное представление может перерисоваться, при обработке кликов ищем заново кликабельный dom-элемент.
- Returns
кликабельный dom-элемент
getColumns#
- public Columns getColumns()#
Получить колонки табличного представления.
- Throws
ElementNotFoundException
– если не удалось получить колонки таблицы
- Returns
объект, содержащий колонки
getDynamicEditor#
- public WebElement getDynamicEditor()#
Получить dom-элемент открытого динамического редактора.
- Throws
ElementNotFoundException
– если не найден открытый динамический редактор
- Returns
dom-элемент динамического редактора
getGridMode#
getKeyboardInputWebElement#
- public Optional<WebElement> getKeyboardInputWebElement()#
getOffset#
- public int getOffset()#
Получить смещение до первой отображаемой строки. По факту, это порядковый номер этой строки.
- Returns
номер строки или -1 если не удалось получить
See also
getRowByIndex#
- public Row getRowByIndex(int rowIndex)#
Получить строку табличного представления из строк, отображающихся в гриде в текущий момент, по порядковому индексу. Порядковый индекс – число от 0 до <количество отображенных строк> - 1.
- Parameters
rowIndex – порядковый индекс (число от 0 до <количество отображенных строк> - 1)
- Throws
ElementNotFoundException
– если не удалось получить строки таблицы
- Returns
строка
getRowByNumber#
- public Row getRowByNumber(int rowNumber)#
Получить строку табличного представления по порядковому номеру строки.
- Parameters
rowNumber – порядковый номер строки (число от 0 до
getTotalCount()
- 1)
- Throws
ElementNotFoundException
– если не удалось получить строки таблицы
- Returns
строка
getRows#
getSelectedColumnIndex#
- public int getSelectedColumnIndex()#
Получить порядковый индекс столбца, в котором находится ячейка в состоянии “фокус”.
- Returns
порядковый индекс столбца. -1, если не удалось определить такой столбец.
getSelectedRowIndex#
- public int getSelectedRowIndex()#
Получить порядковый индекс строки, в которой находится ячейка в состоянии “фокус”.
- Returns
порядковый индекс строки. -1, если не удалось определить такую строку.
See also
getSelectedRowNumber#
- public int getSelectedRowNumber()#
Получить порядковый номер строки, в которой находится ячейка в состоянии “фокус”.
- Returns
порядковый номер строки. -1, если не удалось определить такую строку.
See also
getTotalCount#
- public int getTotalCount()#
Получить количество записей выборки.
- Returns
количество записей или -1 если не удалось получить количество записей.
See also
getWindowSize#
- public int getWindowSize()#
Получить ёмкость окна записей. Ёмкость – это максимальное количество записей выборки, подгруженных в текущий момент в табличное представление.
Следует ожидать, что количество подгруженных записей не равно количеству отображаемых записей.
- Returns
ёмкость окна или -1 если не удалось получить ёмкость.
See also
hasOpenDynamicEditor#
- public boolean hasOpenDynamicEditor()#
Проверяет, если ли в текущий момент у текущего табличного представления открытый динамический редактор.
- Returns
признак существования открытого динамического редактора.
isEditable#
- public boolean isEditable()#
Получить признак редактируемости в табличном представлении.
- Returns
признак редактируемости в табличном представлении
isPartialLoaded#
- public boolean isPartialLoaded()#
Получить признак неполной загрузки записей выборки.
- Returns
true, если данные списка загружены не полностью.
populateProperties#
- protected void populateProperties()#
Собирает из атрибутов dom-элемента табличного представления свойства табличного представления.
rightClick#
- public void rightClick()#
При клике правой кнопкой мыши делаем предварительный клик в табличное представление.
wait#
waitForDomStability#
- public void waitForDomStability()#
Метод, позволяющий подождать отсутствия изменений графического состояния табличного представления (отсутствие изменений на dom-модели) в течении некоторого предопределенного времени.
Рекомендуется использовать после симуляции взаимодействия пользователя с табличным представлением, которое может привести к асинхронным обращениям к серверу.
waitForDomStability#
- public void waitForDomStability(Duration duration)#
Метод, позволяющий подождать отсутствия изменений графического состояния табличного представления (отсутствие изменений на dom-модели) в течении указанного времени.
Рекомендуется использовать после симуляции взаимодействия пользователя с табличным представлением, которое может привести к асинхронным обращениям к серверу.
- Parameters
duration – продолжительность времени, в течении которой не должно происходить изменений на dom-дереве
waitTableElement#
- protected WebElement waitTableElement()#