![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TListView | загрузка и сохранение [D7, WinXP]
.ruslan © (2005-08-10 22:32:00)Здравствуйте!
Подскажите пожалуйста, как сохранить содержимое компонента TListView в файл, и загрузить из файла в компонент. Если не сложно помогите...
.ruslan (2005-08-11 13:26:00) [1]Все сделал, всем спасибо!
.ruslan (2005-08-11 11:27:00) [2]Все сохраняет, буду разбираться с загрузкой...
begin...end (2005-08-11 11:15:00) [3]> Defunct © (11.08.05 00:49) [4]
> constAListView: TListView
Это зачем так?
Defunct (2005-08-11 11:13:00) [4].ruslan © (11.08.05 11:04) [6]
> but expression of type 'TAction' found
А что вы ему скармливаете?
С TListView код проверен.
.ruslan (2005-08-11 11:06:00) [5]Наиль ©, созраняет только первый столбец, как же быть с остальными?
.ruslan (2005-08-11 11:04:00) [6]
...
if AListView.Items.Count = 0 then exit;
...
вот на этой строку происходит ошибка Statement expected, but expression of type 'TAction' found
Наиль (2005-08-11 00:56:00) [7]C сохранением SubItems
begin
Add( AListView.Items[i].Caption );
Add( AListView.Items[i].SubItems.CommaText );
end;
...
for i := 0 to Count - 1 do
With AListView.Items.Add do begin
Caption := Strings[i*2];
SubItems.CommaText:=Strings[i*2+1];
end;
Defunct (2005-08-11 00:49:00) [8]Наиль © (10.08.05 23:19) [3]
хехе ;>
> .ruslan © (10.08.05 23:18) [2]
В общем-то, рабочий пример написать не сложно. Но только, SubItems вы будете сохранять и восстанавливать самостоятельно по аналогии.
procedure SaveListViewToFile( const AListView: TListView; const AFileName: String);
var
i : integer;
begin
if AListView.Items.Count = 0 then exit;
with TStringList.Create do
try
for i := 0 to AListView.Items.Count - 1 do
begin
Add( AListView.Items[i].Caption );
end;
SaveToFile( AFileName )
finally
free
end
end;
procedure LoadListViewFromFile( const AListView: TListView; const AFileName: String);
var
i : integer;
begin
AListView.Items.Clear;
if not FileExists( AFileName ) then exit;
with TStringList.Create do
try
LoadFromFile( AFileName );
for i := 0 to Count - 1 do
begin
AListView.Items.Add.Caption := Strings[i];
end;
finally
free
end
end;
пример использования:
SaveListViewToFile( ListView1, 'c:\lv.txt' );
LoadListViewFromFile( ListView1, 'c:\lv.txt' );
Наиль (2005-08-10 23:19:00) [9]Я тоже всегда ошибаюсь в этом месте
for i := 0 to LV.Items.Count -1do
.ruslan (2005-08-10 23:18:00) [10]ээ.. всё бы прекрасно, но дело в том, что я начинающий в Delphi, и этот пример вреде как не покатит :(
Defunct (2005-08-10 22:35:00) [11]
for i := 0 to LV.Items.Count do
begin
< сохраняем >
end
while not Eof( F ) do
begin
LI := LV.Items.Add;
< загружаем очередной LI>
end;
?