Страница 1 из 1

ShellListView1.GetPathFromItem - в чем прикол?

СообщениеДобавлено: 14.05.2020 22:07:26
McLion
Всем привет,
что-то не могу понять следубщую вещь:
Задаю
Код: Выделить всё
procedure TMainForm.Button1Click(Sender: TObject);
begin
  ShowMessage(ShellListView1.GetPathFromItem(ShellListView1.Selected));
end;


и получаю все как следеует, имя файли и соответвенно абсолютную дерикторию, а вот задаю

Код: Выделить всё
procedure TMainForm.ShellListView1Change(Sender: TObject; Item: TListItem;
  Change: TItemChange);
begin
  OpenDocument(ShellListView1.GetPathFromItem(ShellListView1.Selected));
end;


И получаю ошибку, причем уже при компиляции, то-есть прога даже не стартует.

Не подскажите в чем проблема? Библиотека "lclintf" конечно дабавлена.

Re: ShellListView1.GetPathFromItem - в чем прикол?

СообщениеДобавлено: 15.05.2020 00:36:20
Sharfik
А если так:
Код: Выделить всё
if Assigned(ShellListView1.Selected) then
OpenDocument(ShellListView1.GetPathFromItem(ShellListView1.Selected));


Или разбить на работу с переменными?

Re: ShellListView1.GetPathFromItem - в чем прикол?

СообщениеДобавлено: 15.05.2020 17:50:18
McLion
Блииин, вот это лохотрон... не то событие взял. В даблклик нужно было это все, не увидел просто.

Код: Выделить всё
procedure TMainForm.ShellListView1DblClick(Sender: TObject);
begin
  OpenDocument(ShellListView1.GetPathFromItem(ShellListView1.Selected));
end;


Теперь все работает, Assigned тоже. Но все равно спасибо!