Лекция 48 Листинг 5.5. Ввод массива строк из компонента Memo

End.

Begin

Const

Implementation

Var

Public

Private

Type

Uses

Листинг 5.5. Ввод массива строк из компонента Memo

unit fr_memo_; interface

Windows, Messages, SysUtils, Classes,

Graphics, Controls, Forms, Dialogs, Menus, StdCtrls;

TForm1 = class(TForm)

Memo1: TMemo;

Button1: TButton;

Label1: TLabel;

procedure ButtonlClick(Sender: TObject);

{ Private declarations }

{ Public declarations }

end;

Forml: TForm1;

($R *.DFM}

procedure TForml.ButtonlClick(Sender: TObject);

SIZE=5; // размермассива var

a:array[l..SIZE]of string[30]; //массив

n: integer; // количество строк, введенных в поле Memo

i:integer; // индекс элемента массива

st :string;

n:=Memo1.Lines.Count;

if n = 0 then begin

ShowMessage('Исходные данные не введены!');

Exit; // выход из процедуры обработки события

end;

// в поле Memo есть текст

if n > SIZE then begin

ShowMessage('Количество строк превышает размер массива.');

n:=SIZE; // будем вводить только первые SIZE строк

end;

for i:=1 to n do

a[i]:=Form1.Memol.Lines[i-1]; // строки Memo пронумерованыснуля

// вывод массива в окно сообщения

if n > 0 then begin

st:='Введенныймассив:'+#13;

for i: =1 to n do

st:=st+IntToStr(i)+' '+ a[i]+f13; ShowMessage(st);

end;

end;

Основную работу выполняет процедура TForm1.Button1Click, которая сначала проверяет, есть ли в поле Memo1 текст. Если текст есть (в этом случае значение свойства Lines.Count больше нуля), то процедура сравнивает количество введенных строк и размер массива. Если это количество превышает размер массива, то программа изменяет значение п, тем самым подготавливает ввод только первых SIZE строк.

На рис. 5.6 приведен вид диалогового окна приложения Ввод массива. После щелчка на командной кнопке Ввод появляется окно (рис. 5.7), которое содержит значения элементов массива, полученные из Memo-поля.

Рис. 5.6. Окно приложения Ввод массива

Рис. 5.7. Массив, введенный из Memo-поля

Тема: Обработка массивов. Стандартные функции для мас­сива целых и вещественных чисел


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



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