Ввод массива. Компонент StringGrid

Используем компонент StringGrid (Massiv: TStringGrid;) для ввода значений элементов массива (A: array[1..N] of integer;).

Шаг 1. Интерфейс Пользователя

Размещаем компонент StringGrid на форме.

В Инспекторе объектов определяем значения следующих свойств

Свойство Значение Комментарий
ColCount   Количество столбцов
DefaultColWidth   Ширина столбца (по умолчанию)
FixedCols   Количество фиксированных столбцов
FixedRows   Количество фиксированных строк
RowCount   Количество строк

Шаг 2. Обработка события OnKeyPress компонента StringGrid

procedure TForm1.MassivKeyPress(Sender: TObject; var Key: Char);

Begin

Case Key of

#8,'0'..'9':;; // можно ввести числа 0..9 и удалить предыдущий

// символ (#8 – клавиша Backspace)

#13: // клавиша Enter

if Massiv.Col < Massiv.ColCount-1

Then

Massiv.Col:= Massiv.Col + 1; // курсор устанавливается в

// следующий столбец

Else

key:= Chr(0); // не обрабатывать нажатие других клавиш

end;

end;

Шаг 3. Формирование массива из строк компонента StringGrid

Поместим этот код в обработчик события (например, OnClick – щелчок по кнопке), которой вызывается после заполнения ячеек компонента StringGrid

for i:= 1 to N do

if Length(Massiv.Cells[i-1, 0]) <>0


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: