Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизПроблема с вводом-выводом данных через параметры процедуры Найти похожие ветки
← →
Pcrepair © (2012-06-25 22:40) [0]Добрый день
В МЕМО1 вводятся строки, после обработки выводятся в МЕМО2(для наглядности работы тестовой процедуры)
Версия1, работает:procedure TForm1.Button1Click(Sender: TObject);
var DataIn,DataOut: TStringList;
begin
DataIn := TStringList.Create;
DataOut := TStringList.Create;
DataIn.AddStrings(Memo1.Lines);
CopyStrings(DataIn, DataOut);
Memo2.Text := DataOut.Text;
DataIn.Free;
DataOut.Free;
end;
procedure TForm1.CopyStrings(var T1,T2:TStringList);
var i:integer; T:TStringList;
begin
T := TStringList.Create;
T.Delimiter := " ";
T.BeginUpdate;
try
For i := 0 to Min(T1.Count, 3)-1 do
T.Add(T1.Strings[i]);
T2.Add(T.DelimitedText);
finally
T.EndUpdate;
end;
T.Free;
end;
Версия 2. Не работает. Не возвращает в Data: string результат работы процедурыprocedure TForm1.Button1Click(Sender: TObject);
var DataIn: TStringList; Data: string;
begin
DataIn := TStringList.Create;
DataIn.AddStrings(Memo1.Lines);
CopyStrings(DataIn, Data);
Memo2.Text := Data; (*вот тут ничего не выводит*)
DataIn.Free;
end;
procedure TForm1.CopyStrings(var T:TStringList; S:string);
var i:integer; T1:TStringList;
begin
T1 := TStringList.Create; (*буферная ПЕРЕМ*)
T1.Delimiter := " "; (*уст. тип разделителя*)
For i := 0 to Min(T.Count, 3)-1 do
T1.Add(T.Strings[i]); (*ну тут все понятно*)
S := T1.DelimitedText; (*объединяем три строки в одну*)
(* Memo2.Text := S; вот тут результат можно вывести, если в обработчике закомментировать
Memo2.Text := Data;*)
T1.Free;
end;
Вопрос: почему в Версии2 не возвращается результат. вся разница в В1 и В2 только в типе переменных на выходе
← →
Sha © (2012-06-25 23:00) [1]мамочки
перед s поставь var
добрыми намерениями
← →
Pcrepair © (2012-06-25 23:05) [2]вот оно чего
каждая переменная в параметрах определяется отдельно
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.057 c