РефератыИнформатикаВвВвод вывод данных в дельфи

Ввод вывод данных в дельфи

Ввод и вывод данных в среде Дельфи


Дельфи представляет собой интегрированную среду разработки, инструменты которой позволяют значительно ускорить процесс разработки, создания и отладки программ.


Среду Дельфи составляет набор окон, визуально не связанных друг с другом. Одним из основных окон является окно конструктора форм (FormDesigner), с помощью которого создаются заготовки для визуальной части программного приложения.


Конструирование формы состоит в переносе в поле формы необходимых компонентов. Каждый компонент имеет определенные свойства, которые определяют состояние и поведение объекта. В программе свойства используются для чтения и/или записи данных напрямую или через определенные методы, т.е. при обращении к тому или иному свойству выполняется либо прямое чтение/запись его значения, либо вызов процедуры или функции, которые возвращают требуемое значение.


На первом этапе создания программных приложений в Дельфи мы будем работать со следующими компонентами, позволяющими выполнить ввод и вывод данных, поясняющих надписей и т.п.:


EDIT - однострочный редактор для ввода, вывода и модификации данных


MEMO - многострочный текстовый редактор для вывода, ввода и изменения


LABEL - метка, для размещения заголовков, и других поясняющих надписей


STATICTEXT - метка, для размещения надписей в рельефной рамке


STRINGGRID - таблица строк, используется для ввода/вывода данных в виде двумерной таблицы.


Каждый компонент получает свое имя (имя компонента и номер, например EDIT1 – первый однострочный редактор, размещенный на форме, EDIT2 - второй однострочный редактор, размещенный на форме и т.д.)


Доступ к компонентам осуществляется с помощью соответствующих свойств компонентов, причем для каждого компонента эти свойства могут быть разными.


Имя компонента Свойство для ввода/вывода


EDITTEXT (в программе записывается EDIT1.TEXT)


MEMOTEXT (в программе записывается MEMO 1.TEXT)


LABEL CAPTION (только вывод) (LABEL1.CAPTION)


STATICTEXT CAPTION (только вывод) (STATICTEXT1.CAPTION)


STRINGGRID массив CELLS [номер столбца, номер строки] в программе записывается STRINGGRID1.CELLS[ j,i ]


Для компонента MEMO часто используется свойство «строка» LINES в сочетании с методом «добавить» ADD. ( в программе записывается MEMO1.LINES.ADD ( ) ).


Указанные свойства этих компонентов имеют строковый тип, т.е. тип STRING, поэтому при вводе числовых данных необходимо выполнить соответствующие преобразования данных


- при вводе
надо перевести данные из строкового типа в числовой, а именно в целочисленный тип или вещественный тип с помощью функций STRTOINT ( )
или STRTOFLOAT ( );


- при выводе
данные надо перевести из целочисленного или вещественного типа в строковый с помощью функций INTTOSTR ( )
или FLOATTOSTR ( )


Для выполнения этих операций используется оператор присваивания « :=
»языка Паскаль.


В левой части оператора записывается имя компонента и его свойство, разделителем является точка, а в правой части – соответствующее значение.


В правой части можно записать любые данные строкового типа, т.е. записанные в апострофах или имя компонента и через точку его свойство, откуда берутся данные.


Для многострочного редактора существует несколько способов вывода данных:


- способ 1 Memo1.Text := ‘вывод с потерей всего выведенного ранее’;


- способ 2 Memo1.Text := Memo1.Text + ‘вывод с сохранением выведенного ранее’;


- способ 3 Memo1.Lines.Add (‘ добавить строку и вывести все, что в апострофах‘) ;


Способы 1 и 2 не вводят новой строки.


Примеры


Вывод в поле метки 1 слова Москва Label1.Caption := ‘ Москва ‘;
Вывод в поле метки 2 числа 25 Label2.Caption := ‘ 25 ‘ ;
Вывод в поле метки 1 числа 10,23 StaticText1 := ' 10.23 ‘ ;
Ввод в переменную А числа 5 из компонента Edit1 А:= strtoint(Edit1.Text)
Вывод в поле Memo1 значения переменной А Memo1.Text :=inttostr
(A) ;

Если выполнить вывод в поле Memo1 из компонента Edit1, то записывается команда Memo1.Text := Edit1.Text






5


- компонент Edit1Ввод в переменную массива В[i,j] целочисленного значения из ячейки StringGrid1

B [ i,j ] :=StrToInt ( StringGrid1.Cells[ j,i ] );


Организация вывода элементов одномерного массива


Элементы одномерного массива можно вывести в разные компоненты.


1. Вывод
в
компонент
Edit


For
I := 1 to
M do


Edit1.Text:=Edit1.Text + ' '+ IntToStr(A[I])


2. Вывод
в
компонент
Label1


For
I := 1 to
M do


Label1.Text:=Label1.Text + ' '+ IntToStr(A[I])


3. Вывод
в
компонент
StaticText


For
I := 1 to
M do


StaticText1.Caption := StaticText1.Caption + IntToStr (A[I]) + ' ';


4. Вывод в компонент
Memo


4.1. В строку:


For
I := 1 to
M do


Memo1.Text:=Memo1.Text + ' '+ IntToStr (A[I]) { использованиесвойства


Text компонента Memo}


4.2. В
столбик


For
I := 1 to
M do


Memo1.Lines.Add ( IntToStr (A[I]) ) {использование метода Add –


добавление новой строки в список}


5. Вывод одномерного массива
Sum в столбец № 1 ком-та
s
tringgrid1


for i := 1 to m do


stringgrid1.Cells[ 1, i ]:= floattostr(sum [ i ] );


В
строку
№ 1 компонента
Stringgrid :


for j := 1 to n do


stringgrid1.Cells[ j, 1 ]:= floattostr(sum [ j ] );


Организация вывода элементов двумерного массива

1. Вывод матрицы В в
s
tringgrid2


for i := 1 to m do


for j:=1 to n do stringgrid2.cells[ j,i ]:=floattostr (b [ i,j ]);


2. Вывод матрицы В в компонент
Memo с расчетом позиций чисел и в файл '
d:
rez.
txt'


var
ff :
textfile
;


d,p,z,i,j:integer; // позиции, счетчик пробелов, длина числа


ss,aa :string; // промежуточные строки ss –строка матрицы ;


// аа-строка для числа


begin


assignfile (
ff,'
d:
rez.
txt'); // связь с файлом на диске


rewrite (
ff); // открыть файл для записи


ss:='';


d:=8; // 8 позиций на число


memo2.Lines.Add('матрица В') ; // вывод в memo2


writeln(
ff,'матрица В') ; // вывод в файл


for I:=1 to m do begin


For j:=1 to n do


Begin aa:= floattostr (b[i,j]); //расчет длины числа и добавление пробелов


// до 8 символов (на 1 число)


z:= d - length (aa);


if b[i,j] <0 then z:=z+1;


for p:=1 to z do SS:=ss+' '; // 1 пробел между апострофами


ss := ss + floattostr (b[i,j]) +' '; // 2 пробела между апострофами


end;


memo2.Lines.Add(ss) ;


writeln(
ff,
ss) ;


ss:=''; // без пробелов между апострофами


d:=8; end;


closefile(ff); // закрыть
файл


end;


end.


Вид файла
D :
rez.
txt с результатами :



матрица В


10,7 2,2 3,3 4,1


10,5 6,3 1,1 -2,1


1,1 5 0,3 -1,1

Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Ввод вывод данных в дельфи

Слов:1056
Символов:8637
Размер:16.87 Кб.