Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.05.2010, 23:50   #1
street-walker
Пользователь
 
Регистрация: 20.04.2009
Сообщений: 65
По умолчанию использование процедур

у меня есть исходники кода,но не пойму как их применить

Цитата:
procedure TreeToIni(Tree: TTreeView; INI: TIniFile; Section: string);
var
n: Integer;
MS: TMemoryStream;
tTv: TStringList;
Msg: string;
begin
tTv := TStringList.Create;
MS := TMemoryStream.Create;
try
Tree.SaveToStream(MS);
MS.Position := 0;
tTv.LoadFromStream(MS);
INI.EraseSection(Section);
for n := 0 to tTv.Count - 1 do
INI.WriteString(Section, 'Node' + IntToStr(n), StringReplace(tTv[n], #9,
'#', [rfReplaceAll]));
finally
tTv.Free;
MS.Free;
end;
end;

procedure TreeFromIni(Tree: TTreeView; INI: TIniFile; Section: string;
Expand: Boolean);
var
n: Integer;
MS: TMemoryStream;
tTv: TStringList;
Msg: string;
begin
tTv := TStringList.Create;
MS := TMemoryStream.Create;
try
INI.ReadSection(Section, tTv);
for n := 0 to tTv.Count - 1 do
tTv[n] := StringReplace(INI.ReadString(Sectio n, tTv[n], ''), '#', #9,
[rfReplaceAll]);
tTv.SaveToStream(MS);
MS.Position := 0;
Tree.LoadFromStream(MS);
if (Expand = True) and (Tree.Items.Count > 0) then
Tree.Items[0].Expand(True);
finally
tTv.Free;
MS.Free;
end;
end;
куда это писать и как обращаться к этим процедурам?
street-walker вне форума Ответить с цитированием
Старый 05.05.2010, 01:32   #2
RAZOR3
Пользователь
 
Регистрация: 25.04.2010
Сообщений: 38
По умолчанию

Вызываешь процедуру например по нажатию кнопки:
а процедуры просто помести в код после implementation
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
TreeToIni(TreeView1, 'D:\inifile.ini', '1');
end;
RAZOR3 вне форума Ответить с цитированием
Старый 14.09.2010, 21:09   #3
Lietto
Новичок
Джуниор
 
Регистрация: 14.09.2010
Сообщений: 2
По умолчанию

А что делают параметры Section и Expand.
Ты вот поставил там '1' - "TreeToIni(TreeView1, 'D:\inifile.ini', '1');"

у меня выкидывает ошибку при такой записи
[DCC Error] Unit1.pas(107): E2010 Incompatible types: 'TIniFile' and 'string'

Последний раз редактировалось Lietto; 14.09.2010 в 21:20.
Lietto вне форума Ответить с цитированием
Старый 14.09.2010, 21:26   #4
ZaRDaK
Форумчанин
 
Регистрация: 01.09.2009
Сообщений: 197
По умолчанию

Вторым параметром надо передавать обьект TIniFile.
Код:
var Ini:TIniFile;
...
begin
Ini := TIniFile.Create('D:\inifile.ini');
TreeToIni(TreeView1, Ini, '1');
Ini.Destroy;
Писал из головы, могуть быть ошибки.
ZaRDaK вне форума Ответить с цитированием
Старый 14.09.2010, 21:38   #5
Lietto
Новичок
Джуниор
 
Регистрация: 14.09.2010
Сообщений: 2
По умолчанию

хыхы...ну да, обьект же нужно сначала создать, как то не подумал...
Lietto вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача с использование процедур и функций gessi Паскаль, Turbo Pascal, PascalABC.NET 4 20.10.2009 17:10
использование процедур и функций! ...Оленька... Паскаль, Turbo Pascal, PascalABC.NET 0 24.12.2008 15:33
использование процедур и функций для работы с массивами.....Паскаль.... КиношкА Помощь студентам 6 13.01.2008 14:23