Название | Программирование для Android и работа с датчиками в среде Delphi 11 |
---|---|
Автор произведения | Виталий Иванович Донцов |
Жанр | |
Серия | |
Издательство | |
Год выпуска | 0 |
isbn | 9785006566965 |
Основным способом работы с таблицей остается работа с клетками [Cells] с указанием координат – колонки Columns (с) и строки Row (r): StringGrid1.Cells [c,r], с операторами присвоения:
StringGrid1.Cells [c,r]:= «текст» или переменной str: String;
str:= StringGrid1.Cells [c,r];
Так как часто содержание Таблицы – числа, то обычным является применение изменения типов данных: StrToInt (), IntToStr (), StrToFloat (), часто с одновременным форматированием: FloatToStrF (n, ffFixed, count всего цифр, count цифр после запятой).
Данным в таблице можно поставить в соответствие данные Memo (нумерация начинается также с 0 и также первую 0-строчку можно для ясности пропустить). Так же, как и в Memo число строк в таблице может быть ограничено, что прямо указывается в Инспекторе объектов в свойстве RowCount; однако, в таблице присутствуют еще и колонки, чего нет в Memo. Поэтому при обращении к Memo и обратно приходится переходить от 1-мерности Memo к 2-мерности таблиц, записывая в Memo все подряд, а при заполнении таблицы разбивая сплошной текст на участки соответствующие строкам и колонкам.
В Memo строки могут быть большой длины (автоматический перевод на другую видимую строку WardWrap:= true не отражается на нумерации строк).
Поэтому все строки таблицы в пределах одной колонки можно совместить, вводя разделитель (например «;») и записать длинную строку.
Обратный переход потребует несколько большего кода, включающего работы со строками для выделения фрагментов строки Memo между «;» соответствующего строке таблицы.
Большие таблицы можно визуально отражать с определенной строки – TopRow и колонки – LeftRow. Часто таблица предназначено только для чтения – ReadOnly или вообще для промежуточных действий и невидима – Visible:= false.
Новый тип таблиц – Grid позволяет вводить различный типы колонок, например, с цифровым вводом, избавляясь таким образом от необходимости переопределять тип вводимых данных. При этом основным элементов таблицы является колонка, а сама таблица представляет собой по существу, набор колонок разного типа. Ширину колонок можно изменять программно или визуально мышью, а также выделив колонку определить ее ширину в Инспекторе объектов или прямо двигая границу колонки мышью. Ширину строки определяет свойство в Инспекторе объектов.
В соответствии с основной идеей Firemonkey, согласно которой каждый компонент – это также и контейнер для других элементов, TGrid представляет собой контейнер в котором можно разместить FMX-объекты как коллекции строк:
TColumn: столбец таблицы с неопределенным содержимым. Можно использовать для создания своих столбцов (с ComboBox и другими элементами);
TStringColumn: столбец содержит только строки;
TCheckColumn: в столбце будут размещаться чекбоксы;
TProgressColumn: для отображения прогресса операции;
TPopupColumn: столбец со списком выбора;
TGlyphColumn: столбец с картинками;
TDate.. и Ttime.. – специально для даты и времени;
Tinteger…