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

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

Диалог выбора директории [D6, D7, Win2k, WinXP]


П7 ©   (2004-10-22 10:20:00) 

Уважаемые Мастера!
Сейчас я использую вот такой код:

function ForderDialog( hwnd : HWND; path : string ) : string;
var
 TitleName : string;
 lpItemID : PItemIDList;
 BrowseInfo : TBrowseInfo;
 DisplayName : array[0..MAX_PATH] of Char;
 TempPath : array[0..MAX_PATH] of Char;
begin
 Result := path;
 FillChar( BrowseInfo, SizeOf( TBrowseInfo ), #0 );
 BrowseInfo.hwndOwner := hwnd;
 BrowseInfo.pszDisplayName := @DisplayName;
 TitleName := 'Please specify a directory';
 BrowseInfo.lpszTitle := PChar( TitleName );
 BrowseInfo.ulFlags := BIF_RETURNONLYFSDIRS;
 lpItemID := SHBrowseForFolder( BrowseInfo );
 if lpItemId <> nil then
 begin
   SHGetPathFromIDList( lpItemID, TempPath );
   Result := TempPath;
   GlobalFreePtr( lpItemID );
 end;
end;

path : string - вписан на будущее. Нужно чтбы директория автоматически выбиралась, относительно пути в path. Как это сделать?


П7   (2004-10-22 10:57:00) [1]

Спасибо, то что надо!!! (:


Гаврила   (2004-10-22 10:49:00) [2]


>  П7


не туда смотришь ,все там есть
используй первый оверлоад из приведенных пентиумом133


Pentium133   (2004-10-22 10:48:00) [3]

Первй параметр - заголовок, второй у меня '', третий - начальная папка.
Что надо еще?


П7   (2004-10-22 10:46:00) [4]

Ну и ничего хорошего я не увидел. Мне нужно чтобы был авто-выбор директории с сохранением возможности выбрать директории более высокого уровня по дереву. Там я этого не обнаружил, может я ни туда смотрю?


Pentium133   (2004-10-22 10:40:00) [5]

unit FileCtrl;

function SelectDirectory(const Caption: string; const Root: WideString; out Directory: string): Boolean; overload;

function SelectDirectory(var Directory: string; Options: TSelectDirOpts; HelpCtx: Longint): Boolean; overload;


П7   (2004-10-22 10:36:00) [6]


> Pentium133 ©   (22.10.04 10:33) [1]

Это что? В какой версии Дельфи? В каком модуле? У меня такой функции нет...


Pentium133   (2004-10-22 10:33:00) [7]

Используй SelectDirectory и не парся.


Наверх

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