Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с TShellListView [D6, Win2k]


softland ©   (2002-03-02 12:38:00) 

Имеется стандартный компонент TShellListView, но
по нему нет раздела во встроенном хелпе.
Вопрос как на нем реализовать свой браузер файловой системы.
Как программно указать католог который надо откыть, скажем тот с которым завершили предыдущий сеанс работы.
Как сделать, чтобы выводилось системное контексное меню при клике на пустом
месте, а не только на файле.
Как сделать переход на один уровень выше по дереву каталогов.


softland   (2002-03-04 02:39:00) [1]

Програмный переход в заданный каталог компоненты TShellListView
но через Ж()?;

cbShell.DroppedDown := true;
cbShell.Path := "x:\etc\cd";
cbShell.DroppedDown := false;
slvFiles.SetFocus();

где cbShell : TShellComboBox;
а slvFiles : TShellListView;
Переход на один уровень выше по дереву каталогов:

cbShell.DroppedDown := true;
cbShell.ItemIndex := cbShell.ItemIndex -1;
cbShell.DroppedDown := false;
slvFiles.SetFocus();


softland   (2002-03-03 22:14:00) [2]

Браузер конечно получиться, и такой у меня есть, но это не решает проблемы перехода в указанный программой каталог.
Кроме того пользователей приучили не пользоваться TShellTreeView
а только кнопками Вперет/Назад/На уровень вверх.
Вероятно необходимо оперировать свойством Root, пришлось делать функцию PrevPath - которая укорачивает строку пути к фолдеру на один уровень, по символу "\". :)

2. Своё меню как корове седло, ведь для items уже определено системное меню, очень удобное и к нему пользователь привык, а к моему нет.

Всё это напоминает изобретение велосипеда по n-му разу.


McSimm   (2002-03-03 13:31:00) [3]


> как на нем реализовать свой браузер файловой системы.

Ложится на форму 3 компонента:
TShellTreeView; TShellComboBox; TShellListView;
Соединяются друг с другом через соответствующие property


> Как сделать, чтобы выводилось системное контексное меню
> при клике на пустом
> месте, а не только на файле.


Указать свой Popup в свойстве ShellListView.PopupMenu


Наверх

Титульная страница Поиск, карта сайта Написать письмо