Массив компонентов…
Массив компонентов…
Возможно ли создание массива компонентов? Для показа статуса я использую набор LED-компонентов и хотел бы иметь к ним доступ, используя массив.
Прежде всего необходимо объявить массив:
LED: array[1..10] of TLed; (10 элементов компонентного типа TLed)
При необходимости динамического создания LED-компонентов организуйте цикл, пример которого мы приводим ниже:
for counter:= 1 to 10 do begin
LED[counter]:= TLED.Create;
LED[counter].top:= …
LED[counter].Left:= …
LED[counter].Parent:= Mainform; {что-то типа этого}
end;
Если компоненты уже присутствуют на форме (в режиме проектирования), сделайте их элементами массива, например так:
leds:= 0;
for counter:= 0 to Form.Componentcount do begin
if (components[counter] is TLED) then begin
inc(leds);
LED[leds]:= TLED(components[counter]);
end
end;
Тем не менее у нас получился массив со случайным расположением LED-компонентов. Я предлагаю назначить свойству Tag каждого LED-компонента порядковый номер его расположения в массиве, а затем заполнить массив, используя это свойство:
for counter := 0 to Form.Componentcount do begin
if (components[counter] is TLED) then begin
LED[Component[counter].tag]:= TLED(components[counter]);
end
end;
Если вам нужен двухмерный массив, то для формирования индекса понадобится другая хитрость, например, хранение в свойстве Hint информации о времени создания компонентов.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Прямоугольный массив
Прямоугольный массив Для создания прямоугольного массива установите переключатель в окне Array (Массив) в положение Rectangular Array (Прямоугольный массив). При этом станут доступны следующие параметры.• Для изменения количества строк и столбцов используют поля Rows (Строки) и
Трехмерный массив
Трехмерный массив Для создания трехмерного массива используется команда 3DARRAY. Как и на плоскости, в трехмерном пространстве можно создать два типа массива – прямоугольный и круговой. Только при формировании прямоугольного массива в качестве дополнительного параметра
Круговой массив
Круговой массив Для того чтобы создать круговой трехмерный массив, нажмите кнопку 3D Array (Трехмерный массив) в группе Modify (Редактирование) на вкладке Ноте (Основная) ленты или выполните команду Modify ? 3D Operations ? 3D Array (Редактирование ? Трехмерные операции ? Трехмерный
6.2.5. Преобразование в массив
6.2.5. Преобразование в массив Когда диапазон преобразуется в массив, интерпретатор последовательно вызывает метод succ, пока не будет достигнута правая граница, и помещает каждый элемент диапазона в возвращаемый массив:r = 3..12arr = r.to_a # [3,4,5,6,7,8,9,10,11,12]Ясно, что для диапазонов
8.2.8. Копирование хэша в массив
8.2.8. Копирование хэша в массив Чтобы преобразовать весь хэш в массив, пользуйтесь методом to_a. В получившемся массиве ключи станут элементами с четными индексами (начиная с 0), а значения — с нечетными:h = {"а"=>1,"b"=>2}h.to_a # ["а",1,"b",2]Можно также получить массив, содержащий
Массив Edit-компонентов
Массив Edit-компонентов Procedure DoSomethingWithEditControls;Var K: Integer; EditArray: Array[0..99] of Tedit;begin Try For K:= 0 to 99 do begin EditArray[K]:= TEdit.Create(Self); EditArray[K].Parent:= Self; SetSomeOtherPropertiesOfTEdit; {Устанавливаем необходимые свойства TEdit} Left:= 100; Top:= K*10; OnMouseMove:= WhatToDoWhenMouseIsMoved; {Что-то делаем при перемещении мыши} end;
Пример 25-1. Простой массив
Пример 25-1. Простой массив #!/bin/basharea[11]=23area[13]=37area[51]=UFOs# Массивы не требуют, чтобы последовательность элементов в массиве была непрерывной.# Некоторые элементы массива могут оставаться неинициализированными.# "Дыркм" в массиве не являются ошибкой.echo -n "area[11] = "echo ${area[11]} #
Прямоугольный массив
Прямоугольный массив Для создания прямоугольного массива установите переключатель в окне Array (Массив) в положение Rectangular Array (Прямоугольный массив) (см. рис. 6.7). При этом станут доступны следующие параметры.• Для изменения количества строк и столбцов используют поля Rows
Полярный массив
Полярный массив Для создания полярного массива установите переключатель в окне Array (Массив) в положение Polar Array (Полярный массив) (рис. 6.11). Рис. 6.11. Окно создания полярного массиваПри этом становятся доступны следующие параметры.• Поля X и Y служат для указания центра
Трехмерный массив
Трехмерный массив Для создания трехмерного массива используется команда 3DARRAY. Как и на плоскости, в трехмерном пространстве можно создать два типа массива – прямоугольный и круговой. Только при формировании прямоугольного массива в качестве дополнительного параметра
Прямоугольный массив
Прямоугольный массив В трехмерном пространстве, кроме строк и столбцов, в прямоугольном массиве добавляются еще и уровни.Чтобы создать трехмерный прямоугольный массив, нажмите кнопку 3D Array (Трехмерный массив) на вкладке Home (Основная) в группе Modify (Редактирование) ленты
Круговой массив
Круговой массив Чтобы создать круговой трехмерный массив, нажмите кнопку 3D Array (Трехмерный массив) на вкладке Home (Основная) в группе Modify (Редактирование) ленты или выполните команду Modify ? 3D Operations ? 3D Array (Редактирование ? Трехмерные операции ? Трехмерный массив).Пример