Появилась проблема с которой никак немогу разобраться!
В своей программе я загружаю в ListView файлы и папки с определенной директории с помощью вот такого кода:
- Код: Выделить всё
procedure TForm1.viewfile(PathD:string);
var
ListItem: TListItem;
sr: tsearchrec;
Begin
if FindFirst(PathD + '\*.*', faAnyFile, sr) = 0 then
// if FindFirst(ExtractFilePath(ParamStr(0)) + '*.*', faAnyFile - faDirectory - faVolumeId, sr) = 0 then
begin
ListView1.Items.Clear;
ListItem := ListView1.Items.Add;
ListItem.Caption := sr.name;
ListItem.SubItems.Add(inttostr(sr.size));
ListItem.SubItems.Add(datetimetostr(FileDateToDateTime(sr.time)));
ListItem.SubItems.Add(inttostr(sr.attr));
while FindNext(sr) = 0 do
begin
ListItem := ListView1.Items.Add;
ListItem.Caption := sr.name;
ListItem.SubItems.Add(floattostrf(sr.size/1024, ffnumber, 10, 0));
ListItem.SubItems.Add(datetimetostr(FileDateToDateTime(sr.time)));
//ListItem.SubItems.Add(inttostr(sr.attr));
end;
FindClose(sr);
end;
End;
Теперь мне нужно войти в отображаемую в ListView директорию с помощью двойного клика мышью. Как это сделать?
Пробовал вот так:
- Код: Выделить всё
procedure TForm1.ListView1DblClick(Sender: TObject);
var
pathD: string;
begin
pathD:=Edit1.Text + '\' + ListView1.Selected.SubItems.Strings[0];
viewfile(PathD);
Edit1.Text:=PathD;
end;
Но компилятор выдает мне что это второй столбец, хотя имена папок находятся в первом.
Спасибо.